!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 : Morse_Shifted_GirifalcoWeizer_1959LowCutoff_Cr__MO_483480726117_003 Supported species : Cr random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Cr (Configuration in file "config-F-Cr.xyz") ----------------------------------------------------------------------------------------------------- Energy = 147.77061540473642 Forces: 1 -6.52742353e+00 -1.34582683e+01 -1.45099373e+01 2 -1.59302951e+01 2.50089788e+01 -1.64928888e+01 3 5.77977910e+00 -7.46695006e+00 3.53776434e+00 4 -6.55876343e+00 1.14043671e+01 1.06550019e+01 5 2.02988375e+01 -3.28555245e+01 -3.22135339e+00 6 6.94903850e+00 3.20513158e+00 -1.15687247e+01 7 7.26383827e+00 -4.38752122e+01 -4.02285324e+01 8 -2.20990388e+01 -1.95120067e+01 8.08848232e+00 9 -1.99117009e+01 -1.15128183e+01 -2.89362885e+01 10 -6.71468379e+00 3.29005614e+01 -3.17675975e+01 11 -9.55090484e+00 -2.66192847e+01 2.76090588e+01 12 -1.37677086e+01 1.78976819e+01 9.14216959e+00 13 -8.06172402e+00 -1.51846234e+01 -6.73873280e+01 14 1.18419811e+01 1.55140079e+01 -1.09254411e+01 15 5.48997892e+01 -1.68588219e+01 1.28432191e+01 16 4.51422613e+00 4.39279392e+01 2.27518345e+01 17 -2.17015262e+01 -1.09454599e+01 -8.89070982e+00 18 5.14310937e+00 2.57998326e+01 -2.85615573e+01 19 6.65782468e+00 -3.30094079e+01 2.00020626e+01 20 -1.42929546e+01 1.26868149e+01 1.55473563e+01 21 -1.98250321e+01 -1.43904660e+01 8.27392848e+00 22 2.67359050e+01 3.74274569e+01 3.28999522e+01 23 6.68851562e+00 -2.49502168e+00 9.59533563e+00 24 1.32130882e+01 9.11565697e+00 1.62226113e+01 25 -1.53567624e+01 -1.45308383e+01 -7.10940535e+00 26 -8.24738332e+00 2.88816472e+01 -1.70022256e+01 27 2.27214088e+01 -5.07071159e+01 2.12719448e+01 28 -4.22444196e+01 3.80961885e+01 1.03251345e+01 29 -1.36110122e+01 -2.25121732e+01 7.25927848e+00 30 1.46634346e+01 2.43610296e+01 1.30047385e+01 31 2.32456755e+01 -1.20624638e+01 1.49984043e+01 32 1.37848818e+01 2.17691621e+01 2.25737122e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Cr (Configuration in file "config-T-Cr.xyz") ----------------------------------------------------------------------------------------------------- Energy = 147.77061540473642 Forces: 1 -6.52742353e+00 -1.34582683e+01 -1.45099373e+01 2 -1.59302951e+01 2.50089788e+01 -1.64928888e+01 3 5.77977910e+00 -7.46695006e+00 3.53776434e+00 4 -6.55876343e+00 1.14043671e+01 1.06550019e+01 5 2.02988375e+01 -3.28555245e+01 -3.22135339e+00 6 6.94903850e+00 3.20513158e+00 -1.15687247e+01 7 7.26383827e+00 -4.38752122e+01 -4.02285324e+01 8 -2.20990388e+01 -1.95120067e+01 8.08848232e+00 9 -1.99117009e+01 -1.15128183e+01 -2.89362885e+01 10 -6.71468379e+00 3.29005614e+01 -3.17675975e+01 11 -9.55090484e+00 -2.66192847e+01 2.76090588e+01 12 -1.37677086e+01 1.78976819e+01 9.14216959e+00 13 -8.06172402e+00 -1.51846234e+01 -6.73873280e+01 14 1.18419811e+01 1.55140079e+01 -1.09254411e+01 15 5.48997892e+01 -1.68588219e+01 1.28432191e+01 16 4.51422613e+00 4.39279392e+01 2.27518345e+01 17 -2.17015262e+01 -1.09454599e+01 -8.89070982e+00 18 5.14310937e+00 2.57998326e+01 -2.85615573e+01 19 6.65782468e+00 -3.30094079e+01 2.00020626e+01 20 -1.42929546e+01 1.26868149e+01 1.55473563e+01 21 -1.98250321e+01 -1.43904660e+01 8.27392848e+00 22 2.67359050e+01 3.74274569e+01 3.28999522e+01 23 6.68851562e+00 -2.49502168e+00 9.59533563e+00 24 1.32130882e+01 9.11565697e+00 1.62226113e+01 25 -1.53567624e+01 -1.45308383e+01 -7.10940535e+00 26 -8.24738332e+00 2.88816472e+01 -1.70022256e+01 27 2.27214088e+01 -5.07071159e+01 2.12719448e+01 28 -4.22444196e+01 3.80961885e+01 1.03251345e+01 29 -1.36110122e+01 -2.25121732e+01 7.25927848e+00 30 1.46634346e+01 2.43610296e+01 1.30047385e+01 31 2.32456755e+01 -1.20624638e+01 1.49984043e+01 32 1.37848818e+01 2.17691621e+01 2.25737122e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==74982== Memcheck, a memory error detector ==74982== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==74982== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==74982== Command: python runner2.py Morse_Shifted_GirifalcoWeizer_1959LowCutoff_Cr__MO_483480726117_003 ==74982== ==74982== Conditional jump or move depends on uninitialised value(s) ==74982== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==74982== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==74982== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==74982== by 0x54744F: ??? (in /usr/bin/python3.6) ==74982== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==74982== by 0x5BA510: ??? (in /usr/bin/python3.6) ==74982== by 0x551760: ??? (in /usr/bin/python3.6) ==74982== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==74982== by 0x50AB52: ??? (in /usr/bin/python3.6) ==74982== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==74982== by 0x509CE7: ??? (in /usr/bin/python3.6) ==74982== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==74982== ==74982== Conditional jump or move depends on uninitialised value(s) ==74982== at 0x4E63408: internal_utf8_loop (loop.c:298) ==74982== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==74982== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==74982== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==74982== by 0x54744F: ??? (in /usr/bin/python3.6) ==74982== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==74982== by 0x5BA510: ??? (in /usr/bin/python3.6) ==74982== by 0x551760: ??? (in /usr/bin/python3.6) ==74982== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==74982== by 0x50AB52: ??? (in /usr/bin/python3.6) ==74982== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==74982== by 0x509CE7: ??? (in /usr/bin/python3.6) ==74982== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==74982== ==74982== Conditional jump or move depends on uninitialised value(s) ==74982== at 0x4E63411: internal_utf8_loop (loop.c:303) ==74982== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==74982== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==74982== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==74982== by 0x54744F: ??? (in /usr/bin/python3.6) ==74982== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==74982== by 0x5BA510: ??? (in /usr/bin/python3.6) ==74982== by 0x551760: ??? (in /usr/bin/python3.6) ==74982== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==74982== by 0x50AB52: ??? (in /usr/bin/python3.6) ==74982== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==74982== by 0x509CE7: ??? (in /usr/bin/python3.6) ==74982== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==74982== ==74982== Conditional jump or move depends on uninitialised value(s) ==74982== at 0x4E63458: internal_utf8_loop (loop.c:298) ==74982== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==74982== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==74982== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==74982== by 0x54744F: ??? (in /usr/bin/python3.6) ==74982== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==74982== by 0x5BA510: ??? (in /usr/bin/python3.6) ==74982== by 0x551760: ??? (in /usr/bin/python3.6) ==74982== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==74982== by 0x50AB52: ??? (in /usr/bin/python3.6) ==74982== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==74982== by 0x509CE7: ??? (in /usr/bin/python3.6) ==74982== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==74982== ==74982== Conditional jump or move depends on uninitialised value(s) ==74982== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==74982== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==74982== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==74982== by 0x54744F: ??? (in /usr/bin/python3.6) ==74982== by 0x547730: PyUnicode_FSConverter (in /usr/bin/python3.6) ==74982== by 0x4C4EC6: ??? (in /usr/bin/python3.6) ==74982== by 0x4F81E8: ??? (in /usr/bin/python3.6) ==74982== by 0x4FBC03: ??? (in /usr/bin/python3.6) ==74982== by 0x4FC794: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==74982== by 0x4C65C8: ??? (in /usr/bin/python3.6) ==74982== by 0x50A979: ??? (in /usr/bin/python3.6) ==74982== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==74982== ==74982== ==74982== HEAP SUMMARY: ==74982== in use at exit: 2,725,642 bytes in 1,595 blocks ==74982== total heap usage: 35,449 allocs, 33,854 frees, 62,777,445 bytes allocated ==74982== ==74982== LEAK SUMMARY: ==74982== definitely lost: 0 bytes in 0 blocks ==74982== indirectly lost: 0 bytes in 0 blocks ==74982== possibly lost: 143,897 bytes in 85 blocks ==74982== still reachable: 2,581,745 bytes in 1,510 blocks ==74982== suppressed: 0 bytes in 0 blocks ==74982== Rerun with --leak-check=full to see details of leaked memory ==74982== ==74982== For counts of detected and suppressed errors, rerun with: -v ==74982== Use --track-origins=yes to see where uninitialised values come from ==74982== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 16332 from 632) ================================================================================ 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.