!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! VERIFICATION CHECK: vc-memory-leak !!!!! !!!!! !!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Description: Check that the model has no memory leaks. This is tested using the Valgrind memory debugging tool (http://valgrind.org) by performing a series of energy and force calculations on a randomly distorted face-centered cubic (FCC) cube base structure for both non-periodic and periodic boundary conditions. Separate configurations are tested for each species supported by the model, as well as one containing a random distribution of all species. Configurations used for testing are provided as auxiliary files. Author: Ellad Tadmor ----------------------------------------------------------------------------------------------------- Results for KIM Model : SNAP_ZuoChenLi_2019_Ge__MO_183216355174_000 Supported species : Ge random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Ge (Configuration in file "config-F-Ge.xyz") ----------------------------------------------------------------------------------------------------- Energy = 4.8507008930176285 Forces: 1 -8.55592173e+00 -9.99545650e+00 -1.05224066e+01 2 -5.51409615e-01 9.23098683e+00 -7.43432974e+00 3 3.92896269e+00 -1.05019702e+01 -1.68299619e-01 4 -7.59979148e+00 5.34372704e+00 3.40954087e+00 5 3.66700880e+00 -1.43528262e+01 -4.78711940e+00 6 6.90700279e+00 5.15729924e+00 -5.53533279e+00 7 7.55065535e+00 -1.87086312e+01 -1.60276473e+01 8 -1.28382527e+01 8.80525231e+00 3.81703518e+00 9 -6.95944035e+00 -4.09163842e+00 -1.62592691e+01 10 4.32484064e+00 1.12021165e+01 -9.34509273e+00 11 8.10686294e+00 -7.80823424e+00 8.98615392e+00 12 -9.58361689e+00 1.42107410e+01 3.52604230e+00 13 -6.60500314e+00 -9.30143014e+00 -1.68059501e+01 14 4.46176582e+00 7.15859640e+00 -3.22821962e+00 15 1.43253932e+01 -5.17673384e+00 6.81831305e+00 16 -2.75492485e+00 1.21401635e+01 1.34081778e+01 17 -1.73816870e+01 -1.24018474e+01 -3.31511174e+00 18 6.55941521e+00 1.50285804e+01 -9.55885625e+00 19 3.57015307e+00 -2.06136991e+01 1.15816207e+01 20 -1.14470877e+01 7.73106741e+00 1.13798728e+01 21 -8.70243172e+00 -1.39876899e+01 4.55150701e+00 22 1.58940251e+01 1.77561829e+01 8.56599582e+00 23 6.98349239e+00 -4.15668626e+00 9.57674077e+00 24 4.84538640e+00 4.44045421e+00 9.17517871e+00 25 -5.58844561e+00 -4.86005692e+00 7.13213477e-01 26 4.47566389e+00 7.48898739e+00 -1.76636767e+01 27 3.21555771e+00 -1.52827858e+01 1.04427186e+01 28 -1.77228656e+01 1.47452967e+01 8.15981734e+00 29 -7.82364795e+00 -6.55885510e+00 -1.01582093e+01 30 6.72053697e+00 1.14662688e+01 -5.73403117e+00 31 1.37201596e+01 -7.16289359e+00 1.03707117e+01 32 4.85764381e+00 1.30557142e+01 1.20609122e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ge (Configuration in file "config-T-Ge.xyz") ----------------------------------------------------------------------------------------------------- Energy = 4.8507008930176285 Forces: 1 -8.55592173e+00 -9.99545650e+00 -1.05224066e+01 2 -5.51409615e-01 9.23098683e+00 -7.43432974e+00 3 3.92896269e+00 -1.05019702e+01 -1.68299619e-01 4 -7.59979148e+00 5.34372704e+00 3.40954087e+00 5 3.66700880e+00 -1.43528262e+01 -4.78711940e+00 6 6.90700279e+00 5.15729924e+00 -5.53533279e+00 7 7.55065535e+00 -1.87086312e+01 -1.60276473e+01 8 -1.28382527e+01 8.80525231e+00 3.81703518e+00 9 -6.95944035e+00 -4.09163842e+00 -1.62592691e+01 10 4.32484064e+00 1.12021165e+01 -9.34509273e+00 11 8.10686294e+00 -7.80823424e+00 8.98615392e+00 12 -9.58361689e+00 1.42107410e+01 3.52604230e+00 13 -6.60500314e+00 -9.30143014e+00 -1.68059501e+01 14 4.46176582e+00 7.15859640e+00 -3.22821962e+00 15 1.43253932e+01 -5.17673384e+00 6.81831305e+00 16 -2.75492485e+00 1.21401635e+01 1.34081778e+01 17 -1.73816870e+01 -1.24018474e+01 -3.31511174e+00 18 6.55941521e+00 1.50285804e+01 -9.55885625e+00 19 3.57015307e+00 -2.06136991e+01 1.15816207e+01 20 -1.14470877e+01 7.73106741e+00 1.13798728e+01 21 -8.70243172e+00 -1.39876899e+01 4.55150701e+00 22 1.58940251e+01 1.77561829e+01 8.56599582e+00 23 6.98349239e+00 -4.15668626e+00 9.57674077e+00 24 4.84538640e+00 4.44045421e+00 9.17517871e+00 25 -5.58844561e+00 -4.86005692e+00 7.13213477e-01 26 4.47566389e+00 7.48898739e+00 -1.76636767e+01 27 3.21555771e+00 -1.52827858e+01 1.04427186e+01 28 -1.77228656e+01 1.47452967e+01 8.15981734e+00 29 -7.82364795e+00 -6.55885510e+00 -1.01582093e+01 30 6.72053697e+00 1.14662688e+01 -5.73403117e+00 31 1.37201596e+01 -7.16289359e+00 1.03707117e+01 32 4.85764381e+00 1.30557142e+01 1.20609122e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==12054== Memcheck, a memory error detector ==12054== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==12054== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==12054== Command: python runner2.py SNAP_ZuoChenLi_2019_Ge__MO_183216355174_000 ==12054== ==12054== Conditional jump or move depends on uninitialised value(s) ==12054== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==12054== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==12054== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==12054== by 0x547A3F: ??? (in /usr/bin/python3.6) ==12054== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==12054== by 0x5BA640: ??? (in /usr/bin/python3.6) ==12054== by 0x551B80: ??? (in /usr/bin/python3.6) ==12054== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==12054== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==12054== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==12054== by 0x509D47: ??? (in /usr/bin/python3.6) ==12054== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==12054== ==12054== Conditional jump or move depends on uninitialised value(s) ==12054== at 0x4E63408: internal_utf8_loop (loop.c:298) ==12054== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==12054== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==12054== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==12054== by 0x547A3F: ??? (in /usr/bin/python3.6) ==12054== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==12054== by 0x5BA640: ??? (in /usr/bin/python3.6) ==12054== by 0x551B80: ??? (in /usr/bin/python3.6) ==12054== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==12054== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==12054== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==12054== by 0x509D47: ??? (in /usr/bin/python3.6) ==12054== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==12054== ==12054== Conditional jump or move depends on uninitialised value(s) ==12054== at 0x4E63411: internal_utf8_loop (loop.c:303) ==12054== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==12054== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==12054== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==12054== by 0x547A3F: ??? (in /usr/bin/python3.6) ==12054== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==12054== by 0x5BA640: ??? (in /usr/bin/python3.6) ==12054== by 0x551B80: ??? (in /usr/bin/python3.6) ==12054== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==12054== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==12054== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==12054== by 0x509D47: ??? (in /usr/bin/python3.6) ==12054== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==12054== ==12054== Conditional jump or move depends on uninitialised value(s) ==12054== at 0x4E63458: internal_utf8_loop (loop.c:298) ==12054== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==12054== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==12054== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==12054== by 0x547A3F: ??? (in /usr/bin/python3.6) ==12054== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==12054== by 0x5BA640: ??? (in /usr/bin/python3.6) ==12054== by 0x551B80: ??? (in /usr/bin/python3.6) ==12054== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==12054== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==12054== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==12054== by 0x509D47: ??? (in /usr/bin/python3.6) ==12054== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==12054== ==12054== Conditional jump or move depends on uninitialised value(s) ==12054== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==12054== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==12054== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==12054== by 0x547A3F: ??? (in /usr/bin/python3.6) ==12054== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==12054== by 0x4CAD31: ??? (in /usr/bin/python3.6) ==12054== by 0x551B80: ??? (in /usr/bin/python3.6) ==12054== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==12054== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==12054== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==12054== by 0x509D47: ??? (in /usr/bin/python3.6) ==12054== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==12054== ==12054== ==12054== HEAP SUMMARY: ==12054== in use at exit: 2,725,642 bytes in 1,595 blocks ==12054== total heap usage: 35,313 allocs, 33,718 frees, 63,426,268 bytes allocated ==12054== ==12054== LEAK SUMMARY: ==12054== definitely lost: 0 bytes in 0 blocks ==12054== indirectly lost: 0 bytes in 0 blocks ==12054== possibly lost: 143,897 bytes in 85 blocks ==12054== still reachable: 2,581,745 bytes in 1,510 blocks ==12054== suppressed: 0 bytes in 0 blocks ==12054== Rerun with --leak-check=full to see details of leaked memory ==12054== ==12054== For counts of detected and suppressed errors, rerun with: -v ==12054== Use --track-origins=yes to see where uninitialised values come from ==12054== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 15550 from 643) ================================================================================ To pass this verification check the number of bytes that are "definitely lost" or "indirectly lost" must be zero. NOTE that Valgrind will typically report non-zero "possibly lost" bytes due to Python's internal memory allocation and garbage collection that it does not monitor. Full Valgrind output written to auxiliary file "valgrind.out" Grade: P Comment: No memory leak detected.