!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 and Daniel S. Karls ----------------------------------------------------------------------------------------------------- Results for KIM Model : EAM_Dynamo_ChamatiPapanicolaouMishin_2006_Fe__MO_960699513424_000 Supported species : Fe random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Fe (Configuration in file "config-F-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 8243.107531158466 Forces: 1 -5.52590227e+02 -2.03010778e+03 -2.55488894e+03 2 -5.08326603e+03 3.75610273e+03 -6.10980539e+02 3 7.43893380e+02 -9.72122984e+02 6.35152497e+02 4 -4.03709999e+02 2.71349330e+03 2.15246694e+03 5 5.26360510e+03 -3.50607994e+03 3.02231414e+02 6 3.37536255e+01 2.89250782e+01 -1.45181210e+01 7 -9.89689896e+02 -2.46014440e+03 -2.88468894e+03 8 -2.00254897e+02 -1.37472760e+03 -8.58648127e+02 9 1.48484444e+03 -5.24915727e+03 -6.34467969e+03 10 -2.71831840e+02 3.46426842e+02 -4.77755751e+02 11 1.04347459e+02 -3.14254855e+02 -1.33829903e+02 12 -1.74533848e+03 5.32431858e+03 6.11105164e+03 13 -1.65825674e+03 -1.17437947e+03 -2.58051412e+03 14 3.34789384e+02 4.08394931e+02 -1.61516597e+02 15 2.55839225e+03 2.64608744e+02 1.77186439e+03 16 -2.66405905e+02 1.01656224e+03 1.05120775e+03 17 -6.16249649e+03 -1.11693061e+03 -5.47383257e+03 18 8.08035803e+02 2.44686638e+03 -2.26027997e+03 19 1.07908577e+04 -7.08788376e+03 5.23806310e+03 20 -5.45659970e+03 5.78495791e+03 2.54961819e+03 21 -2.13711796e+02 -1.00388262e+02 1.26430153e+02 22 1.26642643e+03 2.85482999e+03 2.02250411e+03 23 4.39948187e+01 -3.65889112e+02 7.62090529e+02 24 -3.19001510e+01 4.03183759e+01 2.75789634e+01 25 -1.65137514e+03 -1.60795736e+03 -6.49653662e+02 26 2.81161111e+03 1.21500497e+04 -1.02618595e+04 27 1.20527192e+03 -1.31345427e+04 1.03086435e+04 28 -3.11375916e+03 2.47746079e+03 8.68809828e+02 29 -4.31732601e+02 5.33850055e+02 6.64516554e+02 30 3.30973832e+02 2.16434752e+03 -2.06942937e+03 31 6.70469540e+02 -2.51528882e+03 2.23191540e+03 32 -2.18347718e+02 6.98341743e+02 5.12930816e+02 MONOATOMIC STRUCTURE (pbc=True)-- Species = Fe (Configuration in file "config-T-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 8243.107531158466 Forces: 1 -5.52590227e+02 -2.03010778e+03 -2.55488894e+03 2 -5.08326603e+03 3.75610273e+03 -6.10980539e+02 3 7.43893380e+02 -9.72122984e+02 6.35152497e+02 4 -4.03709999e+02 2.71349330e+03 2.15246694e+03 5 5.26360510e+03 -3.50607994e+03 3.02231414e+02 6 3.37536255e+01 2.89250782e+01 -1.45181210e+01 7 -9.89689896e+02 -2.46014440e+03 -2.88468894e+03 8 -2.00254897e+02 -1.37472760e+03 -8.58648127e+02 9 1.48484444e+03 -5.24915727e+03 -6.34467969e+03 10 -2.71831840e+02 3.46426842e+02 -4.77755751e+02 11 1.04347459e+02 -3.14254855e+02 -1.33829903e+02 12 -1.74533848e+03 5.32431858e+03 6.11105164e+03 13 -1.65825674e+03 -1.17437947e+03 -2.58051412e+03 14 3.34789384e+02 4.08394931e+02 -1.61516597e+02 15 2.55839225e+03 2.64608744e+02 1.77186439e+03 16 -2.66405905e+02 1.01656224e+03 1.05120775e+03 17 -6.16249649e+03 -1.11693061e+03 -5.47383257e+03 18 8.08035803e+02 2.44686638e+03 -2.26027997e+03 19 1.07908577e+04 -7.08788376e+03 5.23806310e+03 20 -5.45659970e+03 5.78495791e+03 2.54961819e+03 21 -2.13711796e+02 -1.00388262e+02 1.26430153e+02 22 1.26642643e+03 2.85482999e+03 2.02250411e+03 23 4.39948187e+01 -3.65889112e+02 7.62090529e+02 24 -3.19001510e+01 4.03183759e+01 2.75789634e+01 25 -1.65137514e+03 -1.60795736e+03 -6.49653662e+02 26 2.81161111e+03 1.21500497e+04 -1.02618595e+04 27 1.20527192e+03 -1.31345427e+04 1.03086435e+04 28 -3.11375916e+03 2.47746079e+03 8.68809828e+02 29 -4.31732601e+02 5.33850055e+02 6.64516554e+02 30 3.30973832e+02 2.16434752e+03 -2.06942937e+03 31 6.70469540e+02 -2.51528882e+03 2.23191540e+03 32 -2.18347718e+02 6.98341743e+02 5.12930816e+02 ================================================================================ VALGRIND OUTPUT ================================================================================ ==86087== Memcheck, a memory error detector ==86087== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==86087== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==86087== Command: python runner2.py EAM_Dynamo_ChamatiPapanicolaouMishin_2006_Fe__MO_960699513424_000 ==86087== ==86087== Conditional jump or move depends on uninitialised value(s) ==86087== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==86087== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==86087== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86087== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86087== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86087== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86087== by 0x551B80: ??? (in /usr/bin/python3.6) ==86087== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86087== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86087== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86087== by 0x509D47: ??? (in /usr/bin/python3.6) ==86087== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86087== ==86087== Conditional jump or move depends on uninitialised value(s) ==86087== at 0x4E63408: internal_utf8_loop (loop.c:298) ==86087== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==86087== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86087== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86087== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86087== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86087== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86087== by 0x551B80: ??? (in /usr/bin/python3.6) ==86087== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86087== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86087== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86087== by 0x509D47: ??? (in /usr/bin/python3.6) ==86087== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86087== ==86087== Conditional jump or move depends on uninitialised value(s) ==86087== at 0x4E63411: internal_utf8_loop (loop.c:303) ==86087== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==86087== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86087== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86087== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86087== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86087== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86087== by 0x551B80: ??? (in /usr/bin/python3.6) ==86087== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86087== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86087== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86087== by 0x509D47: ??? (in /usr/bin/python3.6) ==86087== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86087== ==86087== Conditional jump or move depends on uninitialised value(s) ==86087== at 0x4E63458: internal_utf8_loop (loop.c:298) ==86087== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==86087== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86087== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86087== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86087== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86087== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86087== by 0x551B80: ??? (in /usr/bin/python3.6) ==86087== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86087== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86087== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86087== by 0x509D47: ??? (in /usr/bin/python3.6) ==86087== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86087== ==86087== Conditional jump or move depends on uninitialised value(s) ==86087== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==86087== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==86087== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86087== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86087== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==86087== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==86087== by 0x4F8388: ??? (in /usr/bin/python3.6) ==86087== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==86087== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==86087== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==86087== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==86087== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86087== ==86087== ==86087== HEAP SUMMARY: ==86087== in use at exit: 2,764,995 bytes in 1,647 blocks ==86087== total heap usage: 36,172 allocs, 34,525 frees, 67,671,708 bytes allocated ==86087== ==86087== LEAK SUMMARY: ==86087== definitely lost: 0 bytes in 0 blocks ==86087== indirectly lost: 0 bytes in 0 blocks ==86087== possibly lost: 146,155 bytes in 87 blocks ==86087== still reachable: 2,618,840 bytes in 1,560 blocks ==86087== suppressed: 0 bytes in 0 blocks ==86087== Rerun with --leak-check=full to see details of leaked memory ==86087== ==86087== For counts of detected and suppressed errors, rerun with: -v ==86087== Use --track-origins=yes to see where uninitialised values come from ==86087== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12375 from 660) ================================================================================ 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.