Skip to content

Instantly share code, notes, and snippets.

@bstaletic
Last active January 31, 2021 17:28
Show Gist options
  • Save bstaletic/061ea8912ed5bc4e238363a120f70a1c to your computer and use it in GitHub Desktop.
Save bstaletic/061ea8912ed5bc4e238363a120f70a1c to your computer and use it in GitHub Desktop.
Numpy leaks on import
==24972== Memcheck, a memory error detector
==24972== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==24972== Using Valgrind-3.16.1 and LibVEX; rerun with -h for copyright info
==24972== Command: python3.9-dbg -c import\ numpy;\ print(numpy.__version__)
==24972==
1.20.0
==24972==
==24972== HEAP SUMMARY:
==24972== in use at exit: 3,340,248 bytes in 20,455 blocks
==24972== total heap usage: 316,625 allocs, 296,170 frees, 47,680,096 bytes allocated
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,062 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x14C3B9D7: __pyx_pymod_exec_mtrand (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/mtrand.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,063 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x14ED7B64: __pyx_pymod_exec_bit_generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/bit_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,064 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x151009B4: __pyx_pymod_exec__common (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_common.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,065 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x15A165B7: __pyx_pymod_exec__bounded_integers (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_bounded_integers.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,066 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x15C6661D: __pyx_pymod_exec__mt19937 (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_mt19937.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,067 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x15E7E837: __pyx_pymod_exec__philox (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_philox.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,068 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x160930A7: __pyx_pymod_exec__pcg64 (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_pcg64.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,069 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x160930C3: __pyx_pymod_exec__pcg64 (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_pcg64.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,070 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x162A3B42: __pyx_pymod_exec__sfc64 (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_sfc64.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,071 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x162A3B5E: __pyx_pymod_exec__sfc64 (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_sfc64.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972==
==24972== 48 bytes in 1 blocks are definitely lost in loss record 1,072 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x52CE7B: _PyObject_GC_Alloc (gcmodule.c:2225)
==24972== by 0x52CE47: _PyObject_GC_Malloc (gcmodule.c:2252)
==24972== by 0x52CFB3: _PyObject_GC_NewVar (gcmodule.c:2281)
==24972== by 0x473BD1: tuple_alloc (tupleobject.c:92)
==24972== by 0x473E38: PyTuple_Pack (tupleobject.c:208)
==24972== by 0x164BA1BC: __Pyx_InitCachedConstants (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x164BB420: __pyx_pymod_exec__generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972==
==24972== 224 (176 direct, 48 indirect) bytes in 1 blocks are definitely lost in loss record 3,518 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x164BA479: __Pyx_InitCachedConstants (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x164BB420: __pyx_pymod_exec__generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972==
==24972== 232 (176 direct, 56 indirect) bytes in 1 blocks are definitely lost in loss record 3,558 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14C3BA40: __pyx_pymod_exec_mtrand (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/mtrand.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 232 (176 direct, 56 indirect) bytes in 1 blocks are definitely lost in loss record 3,559 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14C3BAAD: __pyx_pymod_exec_mtrand (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/mtrand.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 232 (176 direct, 56 indirect) bytes in 1 blocks are definitely lost in loss record 3,560 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14ED7BF1: __pyx_pymod_exec_bit_generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/bit_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 240 (176 direct, 64 indirect) bytes in 1 blocks are definitely lost in loss record 3,567 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14ED7C66: __pyx_pymod_exec_bit_generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/bit_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 256 (176 direct, 80 indirect) bytes in 1 blocks are definitely lost in loss record 3,588 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14ED7DDE: __pyx_pymod_exec_bit_generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/bit_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 256 (176 direct, 80 indirect) bytes in 1 blocks are definitely lost in loss record 3,589 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x14ED7E60: __pyx_pymod_exec_bit_generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/bit_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972== by 0x62B63F: cfunction_vectorcall_O (methodobject.c:512)
==24972==
==24972== 256 (176 direct, 80 indirect) bytes in 1 blocks are definitely lost in loss record 3,590 of 4,401
==24972== at 0x4C31ECB: malloc (vg_replace_malloc.c:307)
==24972== by 0x467566: _PyMem_RawMalloc (obmalloc.c:99)
==24972== by 0x468168: PyObject_Malloc (obmalloc.c:685)
==24972== by 0x4642D1: _PyObject_New (object.c:165)
==24972== by 0x61A175: PyCode_NewWithPosOnlyArgs (codeobject.c:223)
==24972== by 0x61CB0D: PyCode_New (codeobject.c:274)
==24972== by 0x164BA5AA: __Pyx_InitCachedConstants (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x164BB420: __pyx_pymod_exec__generator (in /home/yannick/.local/lib/python3.9/site-packages/numpy/random/_generator.cpython-39-x86_64-linux-gnu.so)
==24972== by 0x46228A: PyModule_ExecDef (moduleobject.c:399)
==24972== by 0x4F55BB: exec_builtin_or_dynamic (import.c:2245)
==24972== by 0x4F80DF: _imp_exec_dynamic_impl.constprop.2 (import.c:2319)
==24972== by 0x4F80B4: _imp_exec_dynamic (import.c.h:358)
==24972==
==24972== LEAK SUMMARY:
==24972== definitely lost: 1,936 bytes in 19 blocks
==24972== indirectly lost: 520 bytes in 8 blocks
==24972== possibly lost: 2,959,093 bytes in 19,287 blocks
==24972== still reachable: 378,283 bytes in 1,133 blocks
==24972== suppressed: 416 bytes in 8 blocks
==24972== Reachable blocks (those to which a pointer was found) are not shown.
==24972== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==24972==
==24972== For lists of detected and suppressed errors, rerun with: -s
==24972== ERROR SUMMARY: 4194 errors from 4194 contexts (suppressed: 2 from 2)
# Valgrind suppression file for CPython errors and leaks in pybind11 tests
# Taken verbatim from https://github.com/python/cpython/blob/3.9/Misc/valgrind-python.supp#L266-L272
{
Uninitialised byte(s) false alarm, see bpo-35561
Memcheck:Param
epoll_ctl(event)
fun:epoll_ctl
fun:pyepoll_internal_ctl
}
{
Python leaks when spawning a subprocess
Memcheck:Leak
fun:malloc
fun:_PyMem_RawMalloc
fun:PyMem_RawMalloc
fun:PyThread_allocate_lock
fun:_PyEval_InitState
fun:PyInterpreterState_New
...
fun:pyinit_core*
fun:Py_InitializeFromConfig
fun:pymain_init
fun:pymain_main
}
{
Python leaks when spawning a subprocess
Memcheck:Leak
fun:malloc
fun:_PyMem_RawMalloc
fun:_PyMem_DebugRawAlloc
fun:_PyMem_DebugRawMalloc
fun:PyMem_RawMalloc
fun:PyThread_allocate_lock
fun:_PyRuntimeState_Init_impl
fun:_PyRuntimeState_Init
fun:_PyRuntime_Initialize
fun:pymain_init
fun:pymain_main
fun:Py_BytesMain
}
{
Python leaks when spawning a subprocess
Memcheck:Leak
fun:malloc
fun:_PyMem_RawMalloc
fun:PyMem_RawMalloc
fun:PyThread_allocate_lock
fun:_PyImport_AcquireLock
fun:_imp_acquire_lock_impl*
fun:_imp_acquire_lock
fun:cfunction_vectorcall_NOARGS
fun:_PyObject_VectorcallTstate
fun:PyObject_Vectorcall
fun:call_function
fun:_PyEval_EvalFrameDefault
fun:_PyEval_EvalFrame
fun:function_code_fastcall
}
{
Python leaks when spawning a subprocess
Memcheck:Leak
fun:malloc
fun:_PyMem_RawMalloc
fun:PyMem_RawMalloc
fun:PyThread_allocate_lock
fun:newlockobject
...
fun:cfunction_vectorcall_NOARGS
fun:_PyObject_VectorcallTstate
fun:PyObject_Vectorcall
fun:call_function
fun:_PyEval_EvalFrameDefault
fun:_PyEval_EvalFrame
fun:function_code_fastcall
fun:_PyFunction_Vectorcall
}
{
Python leaks when spawning a subprocess
Memcheck:Leak
fun:malloc
fun:_PyMem_RawMalloc
fun:PyMem_RawMalloc
fun:PyThread_allocate_lock
fun:rlock_new
fun:type_call
fun:_PyObject_Call
fun:PyObject_Call
fun:do_call_core
fun:_PyEval_EvalFrameDefault
fun:_PyEval_EvalFrame
fun:_PyEval_EvalCode
fun:_PyFunction_Vectorcall
}
# Not really CPython-specific, see link
{
dlopen leak (https://stackoverflow.com/questions/1542457/memory-leak-reported-by-valgrind-in-dlopen)
Memcheck:Leak
fun:malloc
...
fun:dl_open_worker
fun:_dl_catch_exception
fun:_dl_open
fun:dlopen_doit
fun:_dl_catch_exception
fun:_dl_catch_error
fun:_dlerror_run
fun:dlopen@@GLIBC_2.2.5
fun:_PyImport_FindSharedFuncptr
fun:_PyImport_LoadDynamicModuleWithSpec
}
# Not really CPython-specific, see link
{
dlopen leak (https://stackoverflow.com/questions/1542457/memory-leak-reported-by-valgrind-in-dlopen)
Memcheck:Leak
fun:malloc
...
fun:dl_open_worker
fun:_dl_catch_exception
fun:_dl_open
fun:dlopen_doit
fun:_dl_catch_exception
fun:_dl_catch_error
fun:_dlerror_run
fun:dlopen@@GLIBC_2.2.5
fun:_PyImport_FindSharedFuncptr
fun:_PyImport_LoadDynamicModuleWithSpec
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment