!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_ZhouWadleyJohnson_2001NISTretabulation_Fe__MO_681088298208_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 = 27.837186296250866 Forces: 1 -9.49544959e+00 -8.48901952e+00 -1.64131266e+01 2 -9.41234895e+00 1.28781113e+01 -6.16035338e+00 3 1.87109789e+01 -1.68993106e+01 -4.64533928e+00 4 -1.43713043e+01 1.04482451e+01 -2.46695692e+00 5 2.29217328e+00 -2.03934587e+01 -6.74614949e-01 6 1.21786311e+01 7.46926834e+00 -1.13979331e+01 7 2.74582515e+00 -4.20915269e+01 -3.89920143e+01 8 -1.27411279e+01 -9.84149925e+00 7.55216131e+00 9 -6.86982133e+00 -1.26460977e+01 -1.81460484e+01 10 -7.23346235e+00 1.71040474e+01 -2.24539052e+01 11 5.61112155e+00 -1.44789757e+01 -4.29392999e+00 12 -1.17699815e+01 2.16636195e+01 2.68734466e+00 13 -1.68736174e+01 -1.81899749e+01 -5.89522873e+01 14 9.18529299e+00 1.53707943e+01 -1.21013654e+01 15 4.79964370e+01 -1.83089030e+01 2.12437815e+01 16 1.77482005e+00 4.10935352e+01 2.16417717e+01 17 -2.48004426e+01 -1.36863648e+01 6.10308477e-01 18 1.93240880e+01 1.62334610e+01 6.20479260e+00 19 8.65264555e+00 -1.07740270e+01 9.12347268e+00 20 -6.43253904e+00 9.12579932e+00 9.21346037e+00 21 -1.64175828e+01 -1.03494798e+01 9.93674756e+00 22 2.29686054e+01 3.91272609e+01 2.77014324e+01 23 5.54852954e+00 -3.89414872e+00 1.04087949e+01 24 -2.90161689e+00 3.90888673e+00 3.24417057e+00 25 -1.96553044e+01 -4.87126728e+00 2.37650461e+01 26 -9.33936118e+00 2.02810541e+01 -1.19464658e+01 27 2.29684941e+01 -4.98733859e+01 9.89041810e+00 28 -4.08580324e+01 3.48622299e+01 3.08048870e+00 29 -8.81413249e+00 -1.78933179e+01 5.09949441e+00 30 8.90162259e+00 1.81589091e+01 5.31937024e+00 31 1.77459112e+01 -1.19359112e+01 1.47760598e+01 32 1.13809486e+01 1.68914467e+01 1.71452244e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Fe (Configuration in file "config-T-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 27.837186296250866 Forces: 1 -9.49544959e+00 -8.48901952e+00 -1.64131266e+01 2 -9.41234895e+00 1.28781113e+01 -6.16035338e+00 3 1.87109789e+01 -1.68993106e+01 -4.64533928e+00 4 -1.43713043e+01 1.04482451e+01 -2.46695692e+00 5 2.29217328e+00 -2.03934587e+01 -6.74614949e-01 6 1.21786311e+01 7.46926834e+00 -1.13979331e+01 7 2.74582515e+00 -4.20915269e+01 -3.89920143e+01 8 -1.27411279e+01 -9.84149925e+00 7.55216131e+00 9 -6.86982133e+00 -1.26460977e+01 -1.81460484e+01 10 -7.23346235e+00 1.71040474e+01 -2.24539052e+01 11 5.61112155e+00 -1.44789757e+01 -4.29392999e+00 12 -1.17699815e+01 2.16636195e+01 2.68734466e+00 13 -1.68736174e+01 -1.81899749e+01 -5.89522873e+01 14 9.18529299e+00 1.53707943e+01 -1.21013654e+01 15 4.79964370e+01 -1.83089030e+01 2.12437815e+01 16 1.77482005e+00 4.10935352e+01 2.16417717e+01 17 -2.48004426e+01 -1.36863648e+01 6.10308477e-01 18 1.93240880e+01 1.62334610e+01 6.20479260e+00 19 8.65264555e+00 -1.07740270e+01 9.12347268e+00 20 -6.43253904e+00 9.12579932e+00 9.21346037e+00 21 -1.64175828e+01 -1.03494798e+01 9.93674756e+00 22 2.29686054e+01 3.91272609e+01 2.77014324e+01 23 5.54852954e+00 -3.89414872e+00 1.04087949e+01 24 -2.90161689e+00 3.90888673e+00 3.24417057e+00 25 -1.96553044e+01 -4.87126728e+00 2.37650461e+01 26 -9.33936118e+00 2.02810541e+01 -1.19464658e+01 27 2.29684941e+01 -4.98733859e+01 9.89041810e+00 28 -4.08580324e+01 3.48622299e+01 3.08048870e+00 29 -8.81413249e+00 -1.78933179e+01 5.09949441e+00 30 8.90162259e+00 1.81589091e+01 5.31937024e+00 31 1.77459112e+01 -1.19359112e+01 1.47760598e+01 32 1.13809486e+01 1.68914467e+01 1.71452244e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==93051== Memcheck, a memory error detector ==93051== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==93051== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==93051== Command: python runner2.py EAM_Dynamo_ZhouWadleyJohnson_2001NISTretabulation_Fe__MO_681088298208_000 ==93051== ==93051== Conditional jump or move depends on uninitialised value(s) ==93051== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==93051== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==93051== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93051== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93051== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93051== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93051== by 0x551B80: ??? (in /usr/bin/python3.6) ==93051== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93051== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93051== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93051== by 0x509D47: ??? (in /usr/bin/python3.6) ==93051== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93051== ==93051== Conditional jump or move depends on uninitialised value(s) ==93051== at 0x4E63408: internal_utf8_loop (loop.c:298) ==93051== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==93051== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93051== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93051== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93051== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93051== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93051== by 0x551B80: ??? (in /usr/bin/python3.6) ==93051== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93051== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93051== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93051== by 0x509D47: ??? (in /usr/bin/python3.6) ==93051== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93051== ==93051== Conditional jump or move depends on uninitialised value(s) ==93051== at 0x4E63411: internal_utf8_loop (loop.c:303) ==93051== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==93051== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93051== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93051== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93051== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93051== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93051== by 0x551B80: ??? (in /usr/bin/python3.6) ==93051== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93051== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93051== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93051== by 0x509D47: ??? (in /usr/bin/python3.6) ==93051== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93051== ==93051== Conditional jump or move depends on uninitialised value(s) ==93051== at 0x4E63458: internal_utf8_loop (loop.c:298) ==93051== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==93051== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93051== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93051== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93051== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93051== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93051== by 0x551B80: ??? (in /usr/bin/python3.6) ==93051== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93051== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93051== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93051== by 0x509D47: ??? (in /usr/bin/python3.6) ==93051== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93051== ==93051== Conditional jump or move depends on uninitialised value(s) ==93051== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==93051== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==93051== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93051== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93051== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==93051== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==93051== by 0x4F8388: ??? (in /usr/bin/python3.6) ==93051== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==93051== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==93051== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==93051== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==93051== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93051== ==93051== ==93051== HEAP SUMMARY: ==93051== in use at exit: 2,764,995 bytes in 1,647 blocks ==93051== total heap usage: 36,172 allocs, 34,525 frees, 64,216,762 bytes allocated ==93051== ==93051== LEAK SUMMARY: ==93051== definitely lost: 0 bytes in 0 blocks ==93051== indirectly lost: 0 bytes in 0 blocks ==93051== possibly lost: 146,155 bytes in 87 blocks ==93051== still reachable: 2,618,840 bytes in 1,560 blocks ==93051== suppressed: 0 bytes in 0 blocks ==93051== Rerun with --leak-check=full to see details of leaked memory ==93051== ==93051== For counts of detected and suppressed errors, rerun with: -v ==93051== Use --track-origins=yes to see where uninitialised values come from ==93051== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11151 from 670) ================================================================================ 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.