Created
August 17, 2012 02:35
-
-
Save sdiehl/3375416 to your computer and use it in GitHub Desktop.
Numba / Cython / Fortran
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| $ uname -a | |
| Linux thinkpad 3.4.9-ARCH #1 SMP PREEMPT Sat Jul 9 14:57:41 CEST 2011 x86_64 Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz GenuineIntel GNU/Linux | |
| $ gcc --version | |
| gcc (GCC) 4.6.1 20110819 (prerelease) | |
| $ gfortran --version | |
| GNU Fortran (GCC) 4.6.1 20110819 (prerelease) | |
| # ======== | |
| # n=200 | |
| # ======== | |
| $ python a.py | |
| time = 3.08248782158 | |
| sum(D) = 129281.283888 | |
| $ gfortran -Wall -Wextra -Wimplicit-interface -fPIC -Werror -fmax-errors=1 -O3 -march=native -ffast-math -funroll-loops a.f90 | |
| time = 3.33300000000000003E-003 | |
| sum(D) = 126301.16313791432 | |
| $ gfortran -Wall -Wextra -Wimplicit-interface -fPIC -Werror -fmax-errors=1 -O3 -march=native -ffast-math -funroll-loops a-iter.f90 | |
| $ ./a.out | |
| time = 6.10626800000000020E-004 | |
| sum(D) = 126301.16313791432 | |
| # Cython Built with GCC | |
| $ ipython | |
| In [1]: import numpy as np | |
| In [2]: from memview_bench_v4 import pairwise | |
| In [3]: X = np.random.random((500, 3)) | |
| In [4]: timeit pairwise(X) | |
| 100 loops, best of 3: 2.55 ms per loop | |
| # ======== | |
| # n=2000 | |
| # ======== | |
| $ python a.py | |
| time = 49.7804400921 | |
| sum(D) = 2002766.86661 | |
| $ ./a.out | |
| time = 3.33300000000000003E-003 | |
| sum(D) = 126301.16313791432 | |
| In [3]: X = np.random.random((2000, 3)) | |
| In [4]: time D = pairwise(X) | |
| CPU times: user 0.05 s, sys: 0.08 s, total: 0.13 s | |
| Wall time: 0.13 s | |
| # ======== | |
| # n = 10000 | |
| # ======== | |
| In [5]: X = np.random.random((10000, 3)) | |
| In [6]: time D = pairwise(X) | |
| CPU times: user 1.02 s, sys: 0.97 s, total: 1.99 s | |
| Wall time: 2.00 s | |
| In [7]: %timeit pairwise(X) | |
| 10 loops, best of 3: 40.6 ms per loop |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| $ python numba_pairwise.py (env: science) | |
| {'blocks': {0: <llvm.core.BasicBlock object at 0x133ef90>, | |
| 33: <llvm.core.BasicBlock object at 0x133efd0>, | |
| 43: <llvm.core.BasicBlock object at 0xcf9050>, | |
| 46: <llvm.core.BasicBlock object at 0xcf9090>, | |
| 49: <llvm.core.BasicBlock object at 0xcf9110>, | |
| 52: <llvm.core.BasicBlock object at 0xcf9150>, | |
| 62: <llvm.core.BasicBlock object at 0xcf9190>, | |
| 65: <llvm.core.BasicBlock object at 0xcf91d0>, | |
| 68: <llvm.core.BasicBlock object at 0xcf9250>, | |
| 77: <llvm.core.BasicBlock object at 0xcf9290>, | |
| 87: <llvm.core.BasicBlock object at 0xcf92d0>, | |
| 90: <llvm.core.BasicBlock object at 0xcf9310>, | |
| 93: <llvm.core.BasicBlock object at 0xcf9390>, | |
| 158: <llvm.core.BasicBlock object at 0xcf9350>, | |
| 178: <llvm.core.BasicBlock object at 0xcf9210>, | |
| 182: <llvm.core.BasicBlock object at 0xcf90d0>}, | |
| 'blocks_dom': {0: set([0]), | |
| 33: set([0, 33]), | |
| 43: set([0, 33, 43, 46, 49, 52, 65, 178]), | |
| 46: set([0, 33, 46]), | |
| 49: set([0, 33, 46, 49]), | |
| 52: set([0, 33, 46, 49, 52]), | |
| 62: set([0, 33, 46, 49, 52, 62, 65, 68, 77, 90, 158]), | |
| 65: set([0, 33, 46, 49, 52, 65]), | |
| 68: set([0, 33, 46, 49, 52, 65, 68]), | |
| 77: set([0, 33, 46, 49, 52, 65, 68, 77]), | |
| 87: set([0, 33, 46, 49, 52, 65, 68, 77, 87, 90, 93]), | |
| 90: set([0, 33, 46, 49, 52, 65, 68, 77, 90]), | |
| 93: set([0, 33, 46, 49, 52, 65, 68, 77, 90, 93]), | |
| 158: set([0, 33, 46, 49, 52, 65, 68, 77, 90, 158]), | |
| 178: set([0, 33, 46, 49, 52, 65, 178]), | |
| 182: set([0, 33, 46, 182])}, | |
| 'blocks_in': {0: set(), | |
| 33: set([0]), | |
| 43: set([178]), | |
| 46: set([33, 43]), | |
| 49: set([46]), | |
| 52: set([49]), | |
| 62: set([158]), | |
| 65: set([52, 62]), | |
| 68: set([65]), | |
| 77: set([68]), | |
| 87: set([93]), | |
| 90: set([77, 87]), | |
| 93: set([90]), | |
| 158: set([90]), | |
| 178: set([65]), | |
| 182: set([46])}, | |
| 'blocks_out': {0: set([33]), | |
| 33: set([46]), | |
| 43: set([46]), | |
| 46: set([49, 182]), | |
| 49: set([52]), | |
| 52: set([65]), | |
| 62: set([65]), | |
| 65: set([68, 178]), | |
| 68: set([77]), | |
| 77: set([90]), | |
| 87: set([90]), | |
| 90: set([93, 158]), | |
| 93: set([87]), | |
| 158: set([62]), | |
| 178: set([43]), | |
| 182: set()}, | |
| 'blocks_reaching': {0: set([0]), | |
| 33: set([0, 33]), | |
| 43: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 46: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 49: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 52: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 62: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 65: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 68: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 77: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 87: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 90: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 93: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 158: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 178: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178]), | |
| 182: set([0, | |
| 33, | |
| 43, | |
| 46, | |
| 49, | |
| 52, | |
| 62, | |
| 65, | |
| 68, | |
| 77, | |
| 87, | |
| 90, | |
| 93, | |
| 158, | |
| 178, | |
| 182])}, | |
| 'blocks_reads': {0: set([0, 1]), | |
| 33: set([2]), | |
| 43: set(), | |
| 46: set([6]), | |
| 49: set(), | |
| 52: set([2]), | |
| 62: set(), | |
| 65: set([7]), | |
| 68: set(), | |
| 77: set([3]), | |
| 87: set(), | |
| 90: set([9]), | |
| 93: set([0, 6, 7, 8, 9]), | |
| 158: set([1, 6, 7, 8]), | |
| 178: set(), | |
| 182: set([1])}, | |
| 'blocks_writer': {0: {2: 9, 3: 12, 4: 24, 5: 27}, | |
| 33: {6: 42}, | |
| 43: {6: 43}, | |
| 46: {6: 46}, | |
| 49: {}, | |
| 52: {7: 61}, | |
| 62: {7: 62}, | |
| 65: {7: 65}, | |
| 68: {8: 71}, | |
| 77: {9: 86}, | |
| 87: {9: 87}, | |
| 90: {8: 90, 9: 90}, | |
| 93: {8: 152}, | |
| 158: {}, | |
| 178: {}, | |
| 182: {}}, | |
| 'blocks_writes': {0: set([0, 1, 2, 3, 4, 5]), | |
| 33: set([6]), | |
| 43: set([6]), | |
| 46: set([6]), | |
| 49: set(), | |
| 52: set([7]), | |
| 62: set([7]), | |
| 65: set([7]), | |
| 68: set([8]), | |
| 77: set([9]), | |
| 87: set([9]), | |
| 90: set([8, 9]), | |
| 93: set([8]), | |
| 158: set(), | |
| 178: set(), | |
| 182: set()}, | |
| 'translator': <numba.translate.Translate object at 0xc7ee90>} | |
| op_LOAD_ATTR(): 3 106 shape <Variable(val=<llvm.core.Argument object at 0x133ee90>, _llvm=<llvm.core.Argument object at 0x133ee90>, typ='arr[f64]')> arr[f64] | |
| op_LOAD_ATTR(): { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* | |
| op_LOAD_ATTR(): 18 106 shape <Variable(val=<llvm.core.Argument object at 0x133ef50>, _llvm=<llvm.core.Argument object at 0x133ef50>, typ='arr[f64]')> arr[f64] | |
| op_LOAD_ATTR(): { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* | |
| ('op_CALL_FUNCTION():', <Variable(val=<built-in function range>, _llvm=None, typ=['func'])>) | |
| str_to_llvmtype(): str = 'i64' | |
| add_phi_incomming(): reaching_defs = {33: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 33}, | |
| 43: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 43, 7: 65}} | |
| crnt_block=46, pred=43, local=6 | |
| op_BINARY_ADD(): <Variable(val=<llvm.core.PHINode object at 0xcf9c10>, _llvm=<llvm.core.PHINode object at 0xcf9c10>, typ='i64')> + <Variable(val=<llvm.core.ConstantInt object at 0xcf9750>, _llvm=<llvm.core.ConstantInt object at 0xcf9750>, typ='i64')> | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf9c10>, _llvm=<llvm.core.PHINode object at 0xcf9c10>, typ='i64')>, arg2 = <Variable(val=<llvm.core.ConstantInt object at 0xcf9750>, _llvm=<llvm.core.ConstantInt object at 0xcf9750>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf9c10>, _llvm=<llvm.core.PHINode object at 0xcf9c10>, typ='i64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9510>, _llvm=<llvm.core.Instruction object at 0xcf9510>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| ('op_CALL_FUNCTION():', <Variable(val=<built-in function range>, _llvm=None, typ=['func'])>) | |
| str_to_llvmtype(): str = 'i64' | |
| add_phi_incomming(): reaching_defs = {52: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 52}, | |
| 62: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 62, 8: 90, 9: 90}} | |
| crnt_block=65, pred=62, local=7 | |
| op_BINARY_ADD(): <Variable(val=<llvm.core.PHINode object at 0xcf96d0>, _llvm=<llvm.core.PHINode object at 0xcf96d0>, typ='i64')> + <Variable(val=<llvm.core.ConstantInt object at 0xcf9bd0>, _llvm=<llvm.core.ConstantInt object at 0xcf9bd0>, typ='i64')> | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf96d0>, _llvm=<llvm.core.PHINode object at 0xcf96d0>, typ='i64')>, arg2 = <Variable(val=<llvm.core.ConstantInt object at 0xcf9bd0>, _llvm=<llvm.core.ConstantInt object at 0xcf9bd0>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf96d0>, _llvm=<llvm.core.PHINode object at 0xcf96d0>, typ='i64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9510>, _llvm=<llvm.core.Instruction object at 0xcf9510>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| ('op_CALL_FUNCTION():', <Variable(val=<built-in function range>, _llvm=None, typ=['func'])>) | |
| str_to_llvmtype(): str = 'f64' | |
| add_phi_incomming(): reaching_defs = {77: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 65, 8: 68, 9: 77}, | |
| 87: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 65, 8: 93, 9: 87}} | |
| crnt_block=90, pred=87, local=8 | |
| str_to_llvmtype(): str = 'i64' | |
| add_phi_incomming(): reaching_defs = {77: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 65, 8: 68, 9: 77}, | |
| 87: {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 46, 7: 65, 8: 93, 9: 87}} | |
| crnt_block=90, pred=87, local=9 | |
| op_BINARY_ADD(): <Variable(val=<llvm.core.PHINode object at 0xcf97d0>, _llvm=<llvm.core.PHINode object at 0xcf97d0>, typ='i64')> + <Variable(val=<llvm.core.ConstantInt object at 0xcf9cd0>, _llvm=<llvm.core.ConstantInt object at 0xcf9cd0>, typ='i64')> | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf97d0>, _llvm=<llvm.core.PHINode object at 0xcf97d0>, typ='i64')>, arg2 = <Variable(val=<llvm.core.ConstantInt object at 0xcf9cd0>, _llvm=<llvm.core.ConstantInt object at 0xcf9cd0>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf97d0>, _llvm=<llvm.core.PHINode object at 0xcf97d0>, typ='i64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9490>, _llvm=<llvm.core.Instruction object at 0xcf9490>, typ='i64')> | |
| resolve_type() ==> 'i64' | |
| op_BINARY_SUBSCR(): arr_var.typ = arr[f64] | |
| str_to_llvmtype(): str = 'f64' | |
| %32 = load double* %31 | |
| op_BINARY_SUBSCR(): arr_var.typ = arr[f64] | |
| str_to_llvmtype(): str = 'f64' | |
| %43 = load double* %42 | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.Instruction object at 0xcf9e50>, _llvm=<llvm.core.Instruction object at 0xcf9e50>, typ='f64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9f10>, _llvm=<llvm.core.Instruction object at 0xcf9f10>, typ='f64')> | |
| resolve_type() ==> 'f64' | |
| op_BINARY_SUBSCR(): arr_var.typ = arr[f64] | |
| str_to_llvmtype(): str = 'f64' | |
| %55 = load double* %54 | |
| op_BINARY_SUBSCR(): arr_var.typ = arr[f64] | |
| str_to_llvmtype(): str = 'f64' | |
| %66 = load double* %65 | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.Instruction object at 0xcf9ed0>, _llvm=<llvm.core.Instruction object at 0xcf9ed0>, typ='f64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xd05110>, _llvm=<llvm.core.Instruction object at 0xd05110>, typ='f64')> | |
| resolve_type() ==> 'f64' | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.Instruction object at 0xcf9fd0>, _llvm=<llvm.core.Instruction object at 0xcf9fd0>, typ='f64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9e10>, _llvm=<llvm.core.Instruction object at 0xcf9e10>, typ='f64')> | |
| resolve_type() ==> 'f64' | |
| op_BINARY_ADD(): <Variable(val=<llvm.core.PHINode object at 0xcf98d0>, _llvm=<llvm.core.PHINode object at 0xcf98d0>, typ='f64')> + <Variable(val=<llvm.core.Instruction object at 0xcf9ed0>, _llvm=<llvm.core.Instruction object at 0xcf9ed0>, typ='f64')> | |
| resolve_type(): arg1 = <Variable(val=<llvm.core.PHINode object at 0xcf98d0>, _llvm=<llvm.core.PHINode object at 0xcf98d0>, typ='f64')>, arg2 = <Variable(val=<llvm.core.Instruction object at 0xcf9ed0>, _llvm=<llvm.core.Instruction object at 0xcf9ed0>, typ='f64')> | |
| resolve_type() ==> 'f64' | |
| op_STORE_SUBSCR(): 174 60 None | |
| op_STORE_SUBSCR(): <Variable(val=<llvm.core.Argument object at 0x133ef50>, _llvm=<llvm.core.Argument object at 0x133ef50>, typ='arr[f64]')>[<Variable(val=(<Variable(val=<llvm.core.PHINode object at 0xcf9c10>, _llvm=<llvm.core.PHINode object at 0xcf9c10>, typ='i64')>, <Variable(val=<llvm.core.PHINode object at 0xcf96d0>, _llvm=<llvm.core.PHINode object at 0xcf96d0>, typ='i64')>), _llvm=None, typ='tuple')>] = <Variable(val=<llvm.core.PHINode object at 0xcf98d0>, _llvm=<llvm.core.PHINode object at 0xcf98d0>, typ='f64')> | |
| op_STORE_SUBSCR(): arr_lval = '{ i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output', arr_ltype = '{ i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }*' | |
| str_to_llvmtype(): str = 'f64' | |
| str_to_llvmtype(): str = 'arr[]' | |
| ; ModuleID = 'pairwise_numba_mod_c7ee90' | |
| define { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* @pairwise_numba({ i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output) { | |
| Entry: | |
| %0 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 4 | |
| %1 = load i64** %0 | |
| %2 = getelementptr i64* %1, i32 0 | |
| %3 = load i64* %2 | |
| %4 = getelementptr i64* %1, i32 1 | |
| %5 = load i64* %4 | |
| %6 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output, i32 0, i32 4 | |
| %7 = load i64** %6 | |
| %8 = getelementptr i64* %7, i32 0 | |
| %9 = load i64* %8 | |
| %10 = getelementptr i64* %7, i32 1 | |
| %11 = load i64* %10 | |
| br label %BLOCK_33 | |
| BLOCK_33: ; preds = %Entry | |
| br label %BLOCK_46 | |
| BLOCK_43: ; preds = %BLOCK_178 | |
| %12 = add i64 %13, 1 | |
| br label %BLOCK_46 | |
| BLOCK_46: ; preds = %BLOCK_43, %BLOCK_33 | |
| %13 = phi i64 [ 0, %BLOCK_33 ], [ %12, %BLOCK_43 ] | |
| %14 = icmp slt i64 %13, %3 | |
| br i1 %14, label %BLOCK_49, label %BLOCK_182 | |
| BLOCK_182: ; preds = %BLOCK_46 | |
| ret { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output | |
| BLOCK_49: ; preds = %BLOCK_46 | |
| br label %BLOCK_52 | |
| BLOCK_52: ; preds = %BLOCK_49 | |
| br label %BLOCK_65 | |
| BLOCK_62: ; preds = %BLOCK_158 | |
| %15 = add i64 %16, 1 | |
| br label %BLOCK_65 | |
| BLOCK_65: ; preds = %BLOCK_62, %BLOCK_52 | |
| %16 = phi i64 [ 0, %BLOCK_52 ], [ %15, %BLOCK_62 ] | |
| %17 = icmp slt i64 %16, %3 | |
| br i1 %17, label %BLOCK_68, label %BLOCK_178 | |
| BLOCK_178: ; preds = %BLOCK_65 | |
| br label %BLOCK_43 | |
| BLOCK_68: ; preds = %BLOCK_65 | |
| br label %BLOCK_77 | |
| BLOCK_77: ; preds = %BLOCK_68 | |
| br label %BLOCK_90 | |
| BLOCK_87: ; preds = %BLOCK_93 | |
| %18 = add i64 %20, 1 | |
| br label %BLOCK_90 | |
| BLOCK_90: ; preds = %BLOCK_87, %BLOCK_77 | |
| %19 = phi double [ 0.000000e+00, %BLOCK_77 ], [ %79, %BLOCK_87 ] | |
| %20 = phi i64 [ 0, %BLOCK_77 ], [ %18, %BLOCK_87 ] | |
| %21 = icmp slt i64 %20, %5 | |
| br i1 %21, label %BLOCK_93, label %BLOCK_158 | |
| BLOCK_158: ; preds = %BLOCK_90 | |
| %22 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output, i32 0, i32 5 | |
| %23 = load i64** %22 | |
| %24 = getelementptr i64* %23, i32 0 | |
| %25 = load i64* %24 | |
| %26 = mul i64 %13, %25 | |
| %27 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %output, i32 0, i32 2 | |
| %28 = load i8** %27 | |
| %29 = getelementptr i8* %28, i64 %26 | |
| %30 = bitcast i8* %29 to double* | |
| %31 = getelementptr double* %30, i64 %16 | |
| store double %19, double* %31 | |
| br label %BLOCK_62 | |
| BLOCK_93: ; preds = %BLOCK_90 | |
| %32 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 5 | |
| %33 = load i64** %32 | |
| %34 = getelementptr i64* %33, i32 0 | |
| %35 = load i64* %34 | |
| %36 = mul i64 %13, %35 | |
| %37 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 2 | |
| %38 = load i8** %37 | |
| %39 = getelementptr i8* %38, i64 %36 | |
| %40 = bitcast i8* %39 to double* | |
| %41 = getelementptr double* %40, i64 %20 | |
| %42 = load double* %41 | |
| %43 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 5 | |
| %44 = load i64** %43 | |
| %45 = getelementptr i64* %44, i32 0 | |
| %46 = load i64* %45 | |
| %47 = mul i64 %16, %46 | |
| %48 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 2 | |
| %49 = load i8** %48 | |
| %50 = getelementptr i8* %49, i64 %47 | |
| %51 = bitcast i8* %50 to double* | |
| %52 = getelementptr double* %51, i64 %20 | |
| %53 = load double* %52 | |
| %54 = fsub double %42, %53 | |
| %55 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 5 | |
| %56 = load i64** %55 | |
| %57 = getelementptr i64* %56, i32 0 | |
| %58 = load i64* %57 | |
| %59 = mul i64 %13, %58 | |
| %60 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 2 | |
| %61 = load i8** %60 | |
| %62 = getelementptr i8* %61, i64 %59 | |
| %63 = bitcast i8* %62 to double* | |
| %64 = getelementptr double* %63, i64 %20 | |
| %65 = load double* %64 | |
| %66 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 5 | |
| %67 = load i64** %66 | |
| %68 = getelementptr i64* %67, i32 0 | |
| %69 = load i64* %68 | |
| %70 = mul i64 %16, %69 | |
| %71 = getelementptr { i64, i32*, i8*, i32, i64*, i64*, i8*, i8*, i32, i8*, i8*, i8*, i64* }* %X, i32 0, i32 2 | |
| %72 = load i8** %71 | |
| %73 = getelementptr i8* %72, i64 %70 | |
| %74 = bitcast i8* %73 to double* | |
| %75 = getelementptr double* %74, i64 %20 | |
| %76 = load double* %75 | |
| %77 = fsub double %65, %76 | |
| %78 = fmul double %54, %77 | |
| %79 = fadd double %19, %78 | |
| br label %BLOCK_87 | |
| } | |
| *** glibc detected *** python: double free or corruption (!prev): 0x000000000117f030 *** | |
| ======= Backtrace: ========= | |
| /lib/libc.so.6(+0x77326)[0x7fb4c79bc326] | |
| /usr/lib/python2.7/site-packages/numpy/core/multiarray.so(+0x8ff86)[0x7fb4c6180f86] | |
| /usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx+0xd49)[0x7fb4c7fda819] | |
| /usr/lib/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x895)[0x7fb4c7fdfeb5] | |
| /usr/lib/libpython2.7.so.1.0(PyEval_EvalCode+0x32)[0x7fb4c7fdff82] | |
| /usr/lib/libpython2.7.so.1.0(+0xf5eba)[0x7fb4c7ff8eba] | |
| /usr/lib/libpython2.7.so.1.0(PyRun_FileExFlags+0x92)[0x7fb4c7ff9cb2] | |
| /usr/lib/libpython2.7.so.1.0(PyRun_SimpleFileExFlags+0xdb)[0x7fb4c7ffa6cb] | |
| /usr/lib/libpython2.7.so.1.0(Py_Main+0xc32)[0x7fb4c800b9d2] | |
| /lib/libc.so.6(__libc_start_main+0xed)[0x7fb4c796638d] | |
| python[0x400631] | |
| ======= Memory map: ======== | |
| 00400000-00401000 r-xp 00000000 08:07 3167087 /home/stephen/.virtualenvs/science/bin/python | |
| 00600000-00601000 rw-p 00000000 08:07 3167087 /home/stephen/.virtualenvs/science/bin/python | |
| 007a2000-014d2000 rw-p 00000000 00:00 0 [heap] | |
| 7fb4c1a63000-7fb4c1ae3000 rwxp 00000000 00:00 0 | |
| 7fb4c1ae3000-7fb4c1af8000 r-xp 00000000 08:07 3548442 /usr/lib/libgcc_s.so.1 | |
| 7fb4c1af8000-7fb4c1cf8000 ---p 00015000 08:07 3548442 /usr/lib/libgcc_s.so.1 | |
| 7fb4c1cf8000-7fb4c1cf9000 rw-p 00015000 08:07 3548442 /usr/lib/libgcc_s.so.1 | |
| 7fb4c1cf9000-7fb4c1de6000 r-xp 00000000 08:07 3540482 /usr/lib/libstdc++.so.6.0.16 | |
| 7fb4c1de6000-7fb4c1fe5000 ---p 000ed000 08:07 3540482 /usr/lib/libstdc++.so.6.0.16 | |
| 7fb4c1fe5000-7fb4c1fed000 r--p 000ec000 08:07 3540482 /usr/lib/libstdc++.so.6.0.16 | |
| 7fb4c1fed000-7fb4c1fef000 rw-p 000f4000 08:07 3540482 /usr/lib/libstdc++.so.6.0.16 | |
| 7fb4c1fef000-7fb4c2004000 rw-p 00000000 00:00 0 | |
| 7fb4c2004000-7fb4c2c43000 r-xp 00000000 08:07 3176524 /home/stephen/.virtualenvs/science/lib/python2.7/site-packages/llvm/_core.so | |
| 7fb4c2c43000-7fb4c2e42000 ---p 00c3f000 08:07 3176524 /home/stephen/.virtualenvs/science/lib/python2.7/site-packages/llvm/_core.so | |
| 7fb4c2e42000-7fb4c2e9e000 r--p 00c3e000 08:07 3176524 /home/stephen/.virtualenvs/science/lib/python2.7/site-packages/llvm/_core.so | |
| 7fb4c2e9e000-7fb4c2eb2000 rw-p 00c9a000 08:07 3176524 /home/stephen/.virtualenvs/science/lib/python2.7/site-packages/llvm/_core.so | |
| 7fb4c2eb2000-7fb4c2ebb000 rw-p 00000000 00:00 0 | |
| 7fb4c2ebb000-7fb4c2ef3000 r-xp 00000000 08:07 3599350 /usr/lib/python2.7/site-packages/numpy/random/mtrand.so | |
| 7fb4c2ef3000-7fb4c30f2000 ---p 00038000 08:07 3599350 /usr/lib/python2.7/site-packages/numpy/random/mtrand.so | |
| 7fb4c30f2000-7fb4c30f3000 r--p 00037000 08:07 3599350 /usr/lib/python2.7/site-packages/numpy/random/mtrand.so | |
| 7fb4c30f3000-7fb4c3127000 rw-p 00038000 08:07 3599350 /usr/lib/python2.7/site-packages/numpy/random/mtrand.so | |
| 7fb4c3127000-7fb4c3128000 rw-p 00000000 00:00 0 | |
| 7fb4c3128000-7fb4c312d000 r-xp 00000000 08:07 3617307 /usr/lib/python2.7/lib-dynload/strop.so | |
| 7fb4c312d000-7fb4c332c000 ---p 00005000 08:07 3617307 /usr/lib/python2.7/lib-dynload/strop.so | |
| 7fb4c332c000-7fb4c332d000 r--p 00004000 08:07 3617307 /usr/lib/python2.7/lib-dynload/strop.so | |
| 7fb4c332d000-7fb4c332f000 rw-p 00005000 08:07 3617307 /usr/lib/python2.7/lib-dynload/strop.so | |
| 7fb4c332f000-7fb4c3339000 r-xp 00000000 08:07 3599342 /usr/lib/python2.7/site-packages/numpy/fft/fftpack_lite.so | |
| 7fb4c3339000-7fb4c3538000 ---p 0000a000 08:07 3599342 /usr/lib/python2.7/site-packages/numpy/fft/fftpack_lite.so | |
| 7fb4c3538000-7fb4c3539000 r--p 00009000 08:07 3599342 /usr/lib/python2.7/site-packages/numpy/fft/fftpack_lite.so | |
| 7fb4c3539000-7fb4c353a000 rw-p 0000a000 08:07 3599342 /usr/lib/python2.7/site-packages/numpy/fft/fftpack_lite.so | |
| 7fb4c353a000-7fb4c353c000 r-xp 00000000 08:07 3617337 /usr/lib/python2.7/lib-dynload/grp.so | |
| 7fb4c353c000-7fb4c373b000 ---p 00002000 08:07 3617337 /usr/lib/python2.7/lib-dynload/grp.so | |
| 7fb4c373b000-7fb4c373c000 r--p 00001000 08:07 3617337 /usr/lib/python2.7/lib-dynload/grp.so | |
| 7fb4c373c000-7fb4c373d000 rw-p 00002000 08:07 3617337 /usr/lib/python2.7/lib-dynload/grp.so | |
| 7fb4c373d000-7fb4c3772000 r-xp 00000000 08:07 3540505 /usr/lib/libquadmath.so.0.0.0 | |
| 7fb4c3772000-7fb4c3971000 ---p 00035000 08:07 3540505 /usr/lib/libquadmath.so.0.0.0 | |
| 7fb4c3971000-7fb4c3972000 rw-p 00034000 08:07 3540505 /usr/lib/libquadmath.so.0.0.0 | |
| 7fb4c3972000-7fb4c3a88000 r-xp 00000000 08:07 3540495 /usr/lib/libgfortran.so.3.0.0 | |
| 7fb4c3a88000-7fb4c3c88000 ---p 00116000 08:07 3540495 /usr/lib/libgfortran.so.3.0.0 | |
| 7fb4c3c88000-7fb4c3c8a000 rw-p 00116000 08:07 3540495 /usr/lib/libgfortran.so.3.0.0 | |
| 7fb4c3c8a000-7fb4c3c8b000 rw-p 00000000 00:00 0 | |
| 7fb4c3c8b000-7fb4c3ce2000 r-xp 00000000 08:07 3565459 /usr/lib/libblas.so.3.4.0 | |
| 7fb4c3ce2000-7fb4c3ee1000 ---p 00057000 08:07 3565459 /usr/lib/libblas.so.3.4.0 | |
| 7fb4c3ee1000-7fb4c3ee2000 rw-p 00056000 08:07 3565459 /usr/lib/libblas.so.3.4.0 | |
| 7fb4c3ee2000-7fb4c443c000 r-xp 00000000 08:07 3565462 /usr/lib/liblapack.so.3.4.0 | |
| 7fb4c443c000-7fb4c463b000 ---p 0055a000 08:07 3565462 /usr/lib/liblapack.so.3.4.0 | |
| 7fb4c463b000-7fb4c463e000 rw-p 00559000 08:07 3565462 /usr/lib/liblapack.so.3.4.0 | |
| 7fb4c463e000-7fb4c474c000 rw-p 00000000 00:00 0 | |
| 7fb4c474c000-7fb4c4751000 r-xp 00000000 08:07 3599445 /usr/lib/python2.7/site-packages/numpy/linalg/lapack_lite.so | |
| 7fb4c4751000-7fb4c4951000 ---p 00005000 08:07 3599445 /usr/lib/python2.7/site-packages/numpy/linalg/lapack_lite.so | |
| 7fb4c4951000-7fb4c4952000 r--p 00005000 08:07 3599445 /usr/lib/python2.7/site-packages/numpy/linalg/lapack_lite.so | |
| 7fb4c4952000-7fb4c4953000 rw-p 00006000 08:07 3599445 /usr/lib/python2.7/site-packages/numpy/linalg/lapack_lite.so | |
| 7fb4c4953000-7fb4c4958000 r-xp 00000000 08:07 3598565 /usr/lib/python2.7/site-packages/numpy/lib/_compiled_base.so | |
| 7fb4c4958000-7fb4c4b58000 ---p 00005000 08:07 3598565 /usr/lib/python2.7/site-packages/numpy/lib/_compiled_base.so | |
| 7fb4c4b58000-7fb4c4b59000 r--p 00005000 08:07 3598565 /usr/lib/python2.7/site-packages/numpy/lib/_compiled_base.so | |
| 7fb4c4b59000-7fb4c4b5a000 rw-p 00006000 08:07 3598565 /usr/lib/python2.7/site-packages/numpy/lib/_compiled_base.so | |
| 7fb4c4b5a000-7fb4c4c1b000 rw-p 00000000 00:00 0 | |
| 7fb4c4c1b000-7fb4c4c1e000 r-xp 00000000 08:07 3617345 /usr/lib/python2.7/lib-dynload/_functools.so | |
| 7fb4c4c1e000-7fb4c4e1d000 ---p 00003000 08:07 3617345 /usr/lib/python2.7/lib-dynload/_functools.so | |
| 7fb4c4e1d000-7fb4c4e1e000 r--p 00002000 08:07 3617345 /usr/lib/python2.7/lib-dynload/_functools.so | |
| 7fb4c4e1e000-7fb4c4e1f000 rw-p 00003000 08:07 3617345 /usr/lib/python2.7/lib-dynload/_functools.so | |
| 7fb4c4e1f000-7fb4c4e22000 r-xp 00000000 08:07 3562820 /usr/lib/python2.7/lib-dynload/_heapq.so | |
| 7fb4c4e22000-7fb4c5021000 ---p 00003000 08:07 3562820 /usr/lib/python2.7/lib-dynload/_heapq.so | |
| 7fb4c5021000-7fb4c5022000 r--p 00002000 08:07 3562820 /usr/lib/python2.7/lib-dynload/_heapq.so | |
| 7fb4c5022000-7fb4c5024000 rw-p 00003000 08:07 3562820 /usr/lib/python2.7/lib-dynload/_heapq.so | |
| 7fb4c5024000-7fb4c5026000 r-xp 00000000 08:07 3617355 /usr/lib/python2.7/lib-dynload/_bisect.so | |
| 7fb4c5026000-7fb4c5225000 ---p 00002000 08:07 3617355 /usr/lib/python2.7/lib-dynload/_bisect.so | |
| 7fb4c5225000-7fb4c5226000 r--p 00001000 08:07 3617355 /usr/lib/python2.7/lib-dynload/_bisect.so | |
| 7fb4c5226000-7fb4c5227000 rw-p 00002000 08:07 3617355 /usr/lib/python2.7/lib-dynload/_bisect.so | |
| 7fb4c5227000-7fb4c522f000 r-xp 00000000 08:07 3617326 /usr/lib/python2.7/lib-dynload/operator.so | |
| 7fb4c522f000-7fb4c542e000 ---p 00008000 08:07 3617326 /usr/lib/python2.7/lib-dynload/operator.so | |
| 7fb4c542e000-7fb4c542f000 r--p 00007000 08:07 3617326 /usr/lib/python2.7/lib-dynload/operator.so | |
| 7fb4c542f000-7fb4c5431000 rw-p 00008000 08:07 3617326 /usr/lib/python2.7/lib-dynload/operator.so | |
| 7fb4c5431000-7fb4c5437000 r-xp 00000000 08:07 3617321 /usr/lib/python2.7/lib-dynload/_collections.so | |
| 7fb4c5437000-7fb4c5636000 ---p 00006000 08:07 3617321 /usr/lib/python2.7/lib-dynload/_collections.so | |
| 7fb4c5636000-7fb4c5637000 r--p 00005000 08:07 3617321 /usr/lib/python2.7/lib-dynload/_collections.so | |
| 7fb4c5637000-7fb4c5639000 rw-p 00006000 08:07 3617321 /usr/lib/python2.7/lib-dynload/_collections.so | |
| 7fb4c5639000-7fb4c5663000 r-xp 00000000 08:07 3598666 /usr/lib/python2.7/site-packages/numpy/core/scalarmath.so | |
| 7fb4c5663000-7fb4c5862000 ---p 0002a000 08:07 3598666 /usr/lib/python2.7/site-packages/numpy/core/scalarmath.so | |
| 7fb4c5862000-7fb4c5863000 r--p 00029000 08:07 3598666 /usr/lib/python2.7/site-packages/numpy/core/scalarmath.so | |
| 7fb4c5863000-7fb4c5865000 rw-p 0002a000 08:07 3598666 /usr/lib/python2.7/site-packages/numpy/core/scalarmath.so | |
| 7fb4c5865000-7fb4c5869000 r-xp 00000000 08:07 3617334 /usr/lib/python2.7/lib-dynload/cStringIO.so | |
| 7fb4c5869000-7fb4c5a68000 ---p 00004000 08:07 3617334 /usr/lib/python2.7/lib-dynload/cStringIO.so | |
| 7fb4c5a68000-7fb4c5a69000 r--p 00003000 08:07 3617334 /usr/lib/python2.7/lib-dynload/cStringIO.so | |
| 7fb4c5a69000-7fb4c5a6b000 rw-p 00004000 08:07 3617334 /usr/lib/python2.7/lib-dynload/cStringIO.so | |
| 7fb4c5a6b000-7fb4c5a7d000 r-xp 00000000 08:07 3617327 /usr/lib/python2.7/lib-dynload/cPickle.so | |
| 7fb4c5a7d000-7fb4c5c7c000 ---p 00012000 08:07 3617327 /usr/lib/python2.7/lib-dynload/cPickle.so | |
| 7fb4c5c7c000-7fb4c5c7d000 r--p 00011000 08:07 3617327 /usr/lib/python2.7/lib-dynload/cPickle.so | |
| 7fb4c5c7d000-7fb4c5c7e000 rw-p 00012000 08:07 3617327 /usr/lib/python2.7/lib-dynload/cPickle.so | |
| 7fb4c5c7e000-7fb4c5c97000 r-xp 00000000 08:07 3598696 /usr/lib/python2.7/site-packages/numpy/core/_sort.so | |
| 7fb4c5c97000-7fb4c5e96000 ---p 00019000 08:07 3598696 /usr/lib/python2.7/site-packages/numpy/core/_sort.so | |
| 7fb4c5e96000-7fb4c5e97000 r--p 00018000 08:07 3598696 /usr/lib/python2.7/site-packages/numpy/core/_sort.so | |
| 7fb4c5e97000-7fb4c5e98000 rw-p 00019000 08:07 3598696 /usr/lib/python2.7/site-packages/numpy/core/_sort.so | |
| 7fb4c5e98000-7fb4c5eeb000 r-xp 00000000 08:07 3598706 /usr/lib/python2.7/site-packages/numpy/core/umath.so | |
| 7fb4c5eeb000-7fb4c60ea000 ---p 00053000 08:07 3598706 /usr/lib/python2.7/site-packages/numpy/core/umath.so | |
| 7fb4c60ea000-7fb4c60eb000 r--p 00052000 08:07 3598706 /usr/lib/python2.7/site-packages/numpy/core/umath.so | |
| 7fb4c60eb000-7fb4c60f0000 rw-p 00053000 08:07 3598706 /usr/lib/python2.7/site-packages/numpy/core/umath.so | |
| 7fb4c60f0000-7fb4c60f1000 rw-p 00000000 00:00 0 | |
| 7fb4c60f1000-7fb4c61e7000 r-xp 00000000 08:07 3598676 /usr/lib/python2.7/site-packages/numpy/core/multiarray.so | |
| 7fb4c61e7000-7fb4c63e7000 ---p 000f6000 08:07 3598676 /usr/lib/python2.7/site-packages/numpy/core/multiarray.so | |
| 7fb4c63e7000-7fb4c63e9000 r--p 000f6000 08:07 3598676 /usr/lib/python2.7/site-packages/numpy/core/multiarray.so | |
| 7fb4c63e9000-7fb4c63f6000 rw-p 000f8000 08:07 3598676 /usr/lib/python2.7/site-packages/numpy/core/multiarray.so | |
| 7fb4c63f6000-7fb4c63f7000 rw-p 00000000 00:00 0 | |
| 7fb4c63f7000-7fb4c63fe000 r-xp 00000000 08:07 3617328 /usr/lib/python2.7/lib-dynload/_struct.so | |
| 7fb4c63fe000-7fb4c65fd000 ---p 00007000 08:07 3617328 /usr/lib/python2.7/lib-dynload/_struct.so | |
| 7fb4c65fd000-7fb4c65fe000 r--p 00006000 08:07 3617328 /usr/lib/python2.7/lib-dynload/_struct.so | |
| 7fb4c65fe000-7fb4c6600000 rw-p 00007000 08:07 3617328 /usr/lib/python2.7/lib-dynload/_struct.so | |
| 7fb4c6600000-7fb4c6607000 r-xp 00000000 08:07 3562163 /usr/lib/libffi.so.6.0.0 | |
| 7fb4c6607000-7fb4c6806000 ---p 00007000 08:07 3562163 /usr/lib/libffi.so.6.0.0 | |
| 7fb4c6806000-7fb4c6807000 r--p 00006000 08:07 3562163 /usr/lib/libffi.so.6.0.0 | |
| 7fb4c6807000-7fb4c6808000 rw-p 00007000 08:07 3562163 /usr/lib/libffi.so.6.0.0 | |
| 7fb4c6808000-7fb4c6822000 r-xp 00000000 08:07 3617329 /usr/lib/python2.7/lib-dynload/_ctypes.so | |
| 7fb4c6822000-7fb4c6a21000 ---p 0001a000 08:07 3617329 /usr/lib/python2.7/lib-dynload/_ctypes.so | |
| 7fb4c6a21000-7fb4c6a22000 r--p 00019000 08:07 3617329 /usr/lib/python2.7/lib-dynload/_ctypes.so | |
| 7fb4c6a22000-7fb4c6a26000 rw-p 0001a000 08:07 3617329 /usr/lib/python2.7/lib-dynload/_ctypes.so | |
| 7fb4c6a26000-7fb4c6a67000 rw-p 00000000 00:00 0 | |
| 7fb4c6a67000-7fb4c6a6e000 r-xp 00000000 08:07 3617311 /usr/lib/python2.7/lib-dynload/math.so | |
| 7fb4c6a6e000-7fb4c6c6d000 ---p 00007000 08:07 3617311 /usr/lib/python2.7/lib-dynload/math.so | |
| 7fb4c6c6d000-7fb4c6c6e000 r--p 00006000 08:07 3617311 /usr/lib/python2.7/lib-dynload/math.so | |
| 7fb4c6c6e000-7fb4c6c70000 rw-p 00007000 08:07 3617311 /usr/lib/python2.7/lib-dynload/math.so | |
| 7fb4c6c70000-7fb4c6c7a000 r-xp 00000000 08:07 3617340 /usr/lib/python2.7/lib-dynload/itertools.so | |
| 7fb4c6c7a000-7fb4c6e79000 ---p 0000a000 08:07 3617340 /usr/lib/python2.7/lib-dynload/itertools.so | |
| 7fb4c6e79000-7fb4c6e7a000 r--p 00009000 08:07 3617340 /usr/lib/python2.7/lib-dynload/itertools.so | |
| 7fb4c6e7a000-7fb4c6e7f000 rw-p 0000a000 08:07 3617340 /usr/lib/python2.7/lib-dynload/itertools.so | |
| 7fb4c6e7f000-7fb4c6e83000 r-xp 00000000 08:07 3617349 /usr/lib/python2.7/lib-dynload/time.so | |
| 7fb4c6e83000-7fb4c7082000 ---p 00004000 08:07 3617349 /usr/lib/python2.7/lib-dynload/time.so | |
| 7fb4c7082000-7fb4c7083000 r--p 00003000 08:07 3617349 /usr/lib/python2.7/lib-dynload/time.so | |
| 7fb4c7083000-7fb4c7085000 rw-p 00004000 08:07 3617349 /usr/lib/python2.7/lib-dynload/time.so | |
| 7fb4c7085000-7fb4c724a000 r--p 00000000 08:07 3558268 /usr/lib/locale/locale-archive | |
| 7fb4c724a000-7fb4c733d000 r-xp 00000000 08:07 2883604 /lib/libm-2.15.so | |
| 7fb4c733d000-7fb4c753c000 ---p 000f3000 08:07 2883604 /lib/libm-2.15.so | |
| 7fb4c753c000-7fb4c753d000 r--p 000f2000 08:07 2883604 /lib/libm-2.15.so | |
| 7fb4c753d000-7fb4c753e000 rw-p 000f3000 08:07 2883604 /lib/libm-2.15.so | |
| 7fb4c753e000-7fb4c7540000 r-xp 00000000 08:07 2887882 /lib/libutil-2.15.so | |
| 7fb4c7540000-7fb4c773f000 ---p 00002000 08:07 2887882 /lib/libutil-2.15.so | |
| 7fb4c773f000-7fb4c7740000 r--p 00001000 08:07 2887882 /lib/libutil-2.15.so | |
| 7fb4c7740000-7fb4c7741000 rw-p 00002000 08:07 2887882 /lib/libutil-2.15.so | |
| 7fb4c7741000-7fb4c7743000 r-xp 00000000 08:07 2883603 /lib/libdl-2.15.so | |
| 7fb4c7743000-7fb4c7943000 ---p 00002000 08:07 2883603 /lib/libdl-2.15.so | |
| 7fb4c7943000-7fb4c7944000 r--p 00002000 08:07 2883603 /lib/libdl-2.15.so | |
| 7fb4c7944000-7fb4c7945000 rw-p 00003000 08:07 2883603 /lib/libdl-2.15.so | |
| 7fb4c7945000-7fb4c7add000 r-xp 00000000 08:07 2883734 /lib/libc-2.15.so | |
| 7fb4c7add000-7fb4c7cdd000 ---p 00198000 08:07 2883734 /lib/libc-2.15.so | |
| 7fb4c7cdd000-7fb4c7ce1000 r--p 00198000 08:07 2883734 /lib/libc-2.15.so | |
| 7fb4c7ce1000-7fb4c7ce3000 rw-p 0019c000 08:07 2883734 /lib/libc-2.15.so | |
| 7fb4c7ce3000-7fb4c7ce7000 rw-p 00000000 00:00 0 | |
| 7fb4c7ce7000-7fb4c7cfe000 r-xp 00000000 08:07 2883595 /lib/libpthread-2.15.so | |
| 7fb4c7cfe000-7fb4c7efd000 ---p 00017000 08:07 2883595 /lib/libpthread-2.15.so | |
| 7fb4c7efd000-7fb4c7efe000 r--p 00016000 08:07 2883595 /lib/libpthread-2.15.so | |
| 7fb4c7efe000-7fb4c7eff000 rw-p 00017000 08:07 2883595 /lib/libpthread-2.15.so | |
| 7fb4c7eff000-7fb4c7f03000 rw-p 00000000 00:00 0 | |
| 7fb4c7f03000-7fb4c806e000 r-xp 00000000 08:07 3561750 /usr/lib/libpython2.7.so.1.0 | |
| 7fb4c806e000-7fb4c826e000 ---p 0016b000 08:07 3561750 /usr/lib/libpython2.7.so.1.0 | |
| 7fb4c826e000-7fb4c826f000 r--p 0016b000 08:07 3561750 /usr/lib/libpython2.7.so.1.0 | |
| 7fb4c826f000-7fb4c82ad000 rw-p 0016c000 08:07 3561750 /usr/lib/libpython2.7.so.1.0 | |
| 7fb4c82ad000-7fb4c82bc000 rw-p 00000000 00:00 0 | |
| 7fb4c82bc000-7fb4c82dd000 r-xp 00000000 08:07 2887872 /lib/ld-2.15.so | |
| 7fb4c833d000-7fb4c837e000 rw-p 00000000 00:00 0 | |
| 7fb4c837f000-7fb4c8401000 rw-p 00000000 00:00 0 | |
| 7fb4c8433000-7fb4c84ba000 rw-p 00000000 00:00 0 | |
| 7fb4c84d8000-7fb4c84d9000 rw-p 00000000 00:00 0 | |
| 7fb4c84d9000-7fb4c84da000 rwxp 00000000 00:00 0 | |
| 7fb4c84da000-7fb4c84dc000 rw-p 00000000 00:00 0 | |
| 7fb4c84dc000-7fb4c84dd000 r--p 00020000 08:07 2887872 /lib/ld-2.15.so | |
| 7fb4c84dd000-7fb4c84de000 rw-p 00021000 08:07 2887872 /lib/ld-2.15.so | |
| 7fb4c84de000-7fb4c84df000 rw-p 00000000 00:00 0 | |
| 7fff96799000-7fff967d7000 rw-p 00000000 00:00 0 [stack] | |
| 7fff967ff000-7fff96800000 r-xp 00000000 00:00 0 [vdso] | |
| ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] | |
| zsh: abort python numba_pairwise.py |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment