!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_ZhouJohnsonWadley_2004_Fe__MO_650279905230_005 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.837168050065213 Forces: 1 -9.49475310e+00 -8.48907551e+00 -1.64123279e+01 2 -9.41252476e+00 1.28779058e+01 -6.16049694e+00 3 1.87105665e+01 -1.68993675e+01 -4.64615036e+00 4 -1.43712229e+01 1.04489229e+01 -2.46639611e+00 5 2.29201173e+00 -2.03936162e+01 -6.74700218e-01 6 1.21783359e+01 7.46936851e+00 -1.13969106e+01 7 2.74632489e+00 -4.20892857e+01 -3.89905908e+01 8 -1.27406536e+01 -9.84225358e+00 7.55168350e+00 9 -6.86948399e+00 -1.26462162e+01 -1.81460022e+01 10 -7.23325232e+00 1.71040494e+01 -2.24537841e+01 11 5.61140977e+00 -1.44789232e+01 -4.29433466e+00 12 -1.17700799e+01 2.16639800e+01 2.68738362e+00 13 -1.68727706e+01 -1.81906778e+01 -5.89522007e+01 14 9.18525568e+00 1.53707432e+01 -1.21012776e+01 15 4.79957262e+01 -1.83084931e+01 2.12426764e+01 16 1.77479044e+00 4.10938309e+01 2.16420418e+01 17 -2.48006994e+01 -1.36860402e+01 6.10368293e-01 18 1.93235609e+01 1.62333781e+01 6.20478435e+00 19 8.65320745e+00 -1.07741529e+01 9.12371746e+00 20 -6.43264777e+00 9.12574358e+00 9.21302830e+00 21 -1.64172750e+01 -1.03492197e+01 9.93648531e+00 22 2.29673718e+01 3.91252981e+01 2.77000857e+01 23 5.54845482e+00 -3.89377327e+00 1.04083995e+01 24 -2.90141692e+00 3.90860420e+00 3.24413393e+00 25 -1.96557385e+01 -4.87193082e+00 2.37653300e+01 26 -9.33919639e+00 2.02807682e+01 -1.19465127e+01 27 2.29693974e+01 -4.98734628e+01 9.89047073e+00 28 -4.08585308e+01 3.48627540e+01 3.08050169e+00 29 -8.81524134e+00 -1.78934696e+01 5.09837504e+00 30 8.90161114e+00 1.81589064e+01 5.32008729e+00 31 1.77472132e+01 -1.19357326e+01 1.47767368e+01 32 1.13802497e+01 1.68914375e+01 1.71453951e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Fe (Configuration in file "config-T-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 27.837168050065213 Forces: 1 -9.49475310e+00 -8.48907551e+00 -1.64123279e+01 2 -9.41252476e+00 1.28779058e+01 -6.16049694e+00 3 1.87105665e+01 -1.68993675e+01 -4.64615036e+00 4 -1.43712229e+01 1.04489229e+01 -2.46639611e+00 5 2.29201173e+00 -2.03936162e+01 -6.74700218e-01 6 1.21783359e+01 7.46936851e+00 -1.13969106e+01 7 2.74632489e+00 -4.20892857e+01 -3.89905908e+01 8 -1.27406536e+01 -9.84225358e+00 7.55168350e+00 9 -6.86948399e+00 -1.26462162e+01 -1.81460022e+01 10 -7.23325232e+00 1.71040494e+01 -2.24537841e+01 11 5.61140977e+00 -1.44789232e+01 -4.29433466e+00 12 -1.17700799e+01 2.16639800e+01 2.68738362e+00 13 -1.68727706e+01 -1.81906778e+01 -5.89522007e+01 14 9.18525568e+00 1.53707432e+01 -1.21012776e+01 15 4.79957262e+01 -1.83084931e+01 2.12426764e+01 16 1.77479044e+00 4.10938309e+01 2.16420418e+01 17 -2.48006994e+01 -1.36860402e+01 6.10368293e-01 18 1.93235609e+01 1.62333781e+01 6.20478435e+00 19 8.65320745e+00 -1.07741529e+01 9.12371746e+00 20 -6.43264777e+00 9.12574358e+00 9.21302830e+00 21 -1.64172750e+01 -1.03492197e+01 9.93648531e+00 22 2.29673718e+01 3.91252981e+01 2.77000857e+01 23 5.54845482e+00 -3.89377327e+00 1.04083995e+01 24 -2.90141692e+00 3.90860420e+00 3.24413393e+00 25 -1.96557385e+01 -4.87193082e+00 2.37653300e+01 26 -9.33919639e+00 2.02807682e+01 -1.19465127e+01 27 2.29693974e+01 -4.98734628e+01 9.89047073e+00 28 -4.08585308e+01 3.48627540e+01 3.08050169e+00 29 -8.81524134e+00 -1.78934696e+01 5.09837504e+00 30 8.90161114e+00 1.81589064e+01 5.32008729e+00 31 1.77472132e+01 -1.19357326e+01 1.47767368e+01 32 1.13802497e+01 1.68914375e+01 1.71453951e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==92100== Memcheck, a memory error detector ==92100== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==92100== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==92100== Command: python runner2.py EAM_Dynamo_ZhouJohnsonWadley_2004_Fe__MO_650279905230_005 ==92100== ==92100== Conditional jump or move depends on uninitialised value(s) ==92100== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==92100== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==92100== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==92100== by 0x547A3F: ??? (in /usr/bin/python3.6) ==92100== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==92100== by 0x5BA640: ??? (in /usr/bin/python3.6) ==92100== by 0x551B80: ??? (in /usr/bin/python3.6) ==92100== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==92100== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==92100== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==92100== by 0x509D47: ??? (in /usr/bin/python3.6) ==92100== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==92100== ==92100== Conditional jump or move depends on uninitialised value(s) ==92100== at 0x4E63408: internal_utf8_loop (loop.c:298) ==92100== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==92100== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==92100== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==92100== by 0x547A3F: ??? (in /usr/bin/python3.6) ==92100== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==92100== by 0x5BA640: ??? (in /usr/bin/python3.6) ==92100== by 0x551B80: ??? (in /usr/bin/python3.6) ==92100== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==92100== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==92100== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==92100== by 0x509D47: ??? (in /usr/bin/python3.6) ==92100== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==92100== ==92100== Conditional jump or move depends on uninitialised value(s) ==92100== at 0x4E63411: internal_utf8_loop (loop.c:303) ==92100== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==92100== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==92100== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==92100== by 0x547A3F: ??? (in /usr/bin/python3.6) ==92100== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==92100== by 0x5BA640: ??? (in /usr/bin/python3.6) ==92100== by 0x551B80: ??? (in /usr/bin/python3.6) ==92100== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==92100== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==92100== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==92100== by 0x509D47: ??? (in /usr/bin/python3.6) ==92100== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==92100== ==92100== Conditional jump or move depends on uninitialised value(s) ==92100== at 0x4E63458: internal_utf8_loop (loop.c:298) ==92100== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==92100== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==92100== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==92100== by 0x547A3F: ??? (in /usr/bin/python3.6) ==92100== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==92100== by 0x5BA640: ??? (in /usr/bin/python3.6) ==92100== by 0x551B80: ??? (in /usr/bin/python3.6) ==92100== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==92100== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==92100== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==92100== by 0x509D47: ??? (in /usr/bin/python3.6) ==92100== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==92100== ==92100== Conditional jump or move depends on uninitialised value(s) ==92100== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==92100== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==92100== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==92100== by 0x547A3F: ??? (in /usr/bin/python3.6) ==92100== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==92100== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==92100== by 0x4F8388: ??? (in /usr/bin/python3.6) ==92100== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==92100== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==92100== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==92100== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==92100== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==92100== ==92100== ==92100== HEAP SUMMARY: ==92100== in use at exit: 2,764,995 bytes in 1,647 blocks ==92100== total heap usage: 36,172 allocs, 34,525 frees, 64,212,393 bytes allocated ==92100== ==92100== LEAK SUMMARY: ==92100== definitely lost: 0 bytes in 0 blocks ==92100== indirectly lost: 0 bytes in 0 blocks ==92100== possibly lost: 146,155 bytes in 87 blocks ==92100== still reachable: 2,618,840 bytes in 1,560 blocks ==92100== suppressed: 0 bytes in 0 blocks ==92100== Rerun with --leak-check=full to see details of leaked memory ==92100== ==92100== For counts of detected and suppressed errors, rerun with: -v ==92100== Use --track-origins=yes to see where uninitialised values come from ==92100== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12352 from 648) ================================================================================ 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.