!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_Mendelev_2018_Tb__MO_522239651961_000 Supported species : Tb random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Tb (Configuration in file "config-F-Tb.xyz") ----------------------------------------------------------------------------------------------------- Energy = 62237.94198190251 Forces: 1 -2.47763845e+03 -2.31381106e+03 -2.29737174e+03 2 -2.82281628e+03 -4.46261621e+03 -9.26581965e+03 3 -3.15132539e+03 -9.08207172e+03 -2.59500311e+03 4 -8.63943548e+03 -2.83382767e+03 -2.95362486e+03 5 7.69179547e+02 -5.91403956e+03 -4.81568851e+03 6 4.24505596e+03 -2.77172070e+03 -5.07554681e+03 7 6.36091995e+03 -8.22033190e+03 -1.82771088e+03 8 8.68660435e+03 -1.26657399e+04 -7.35147226e+03 9 -5.33536203e+03 1.23969957e+03 -5.91777465e+03 10 -2.98627230e+03 7.02206159e+03 -7.39356281e+03 11 -1.36548027e+04 3.91378142e+03 -1.03186661e+04 12 -6.19023574e+03 4.74857109e+03 -2.10249981e+03 13 4.87371386e+03 3.59732751e+03 -1.66570222e+04 14 4.22146868e+03 3.95559002e+03 -3.75410855e+03 15 1.73609454e+04 4.37221551e+03 -4.63038710e+03 16 3.03724137e+03 1.85020423e+04 -4.41051992e+03 17 -4.72189556e+03 -4.21645193e+03 8.63522596e+02 18 -8.30312539e+03 -9.97475046e+03 7.40876154e+03 19 -1.58729154e+03 -4.87782044e+03 4.16273594e+03 20 -3.88494063e+03 -1.74360353e+03 3.77632881e+03 21 2.79780758e+03 -9.05126743e+03 3.89679565e+03 22 9.77404822e+03 -4.13842489e+03 3.79712204e+03 23 2.28284118e+03 -2.02771692e+03 2.71588259e+03 24 1.56363769e+03 -3.31453190e+03 9.52533100e+03 25 -1.30890862e+04 3.47284404e+03 3.74969936e+03 26 -4.75679007e+03 1.33643555e+04 5.75316079e+03 27 -4.29909796e+03 1.47024172e+03 1.05334117e+04 28 -3.34063466e+03 2.66946979e+03 3.39623156e+03 29 9.33805736e+03 6.14198402e+03 1.43156783e+04 30 6.88834634e+03 5.86313544e+03 2.67356788e+03 31 5.97707339e+03 2.09706586e+03 6.92302522e+03 32 1.06380948e+03 5.17834087e+03 7.87552401e+03 MONOATOMIC STRUCTURE (pbc=True)-- Species = Tb (Configuration in file "config-T-Tb.xyz") ----------------------------------------------------------------------------------------------------- Energy = 62237.94198190251 Forces: 1 -2.47763845e+03 -2.31381106e+03 -2.29737174e+03 2 -2.82281628e+03 -4.46261621e+03 -9.26581965e+03 3 -3.15132539e+03 -9.08207172e+03 -2.59500311e+03 4 -8.63943548e+03 -2.83382767e+03 -2.95362486e+03 5 7.69179547e+02 -5.91403956e+03 -4.81568851e+03 6 4.24505596e+03 -2.77172070e+03 -5.07554681e+03 7 6.36091995e+03 -8.22033190e+03 -1.82771088e+03 8 8.68660435e+03 -1.26657399e+04 -7.35147226e+03 9 -5.33536203e+03 1.23969957e+03 -5.91777465e+03 10 -2.98627230e+03 7.02206159e+03 -7.39356281e+03 11 -1.36548027e+04 3.91378142e+03 -1.03186661e+04 12 -6.19023574e+03 4.74857109e+03 -2.10249981e+03 13 4.87371386e+03 3.59732751e+03 -1.66570222e+04 14 4.22146868e+03 3.95559002e+03 -3.75410855e+03 15 1.73609454e+04 4.37221551e+03 -4.63038710e+03 16 3.03724137e+03 1.85020423e+04 -4.41051992e+03 17 -4.72189556e+03 -4.21645193e+03 8.63522596e+02 18 -8.30312539e+03 -9.97475046e+03 7.40876154e+03 19 -1.58729154e+03 -4.87782044e+03 4.16273594e+03 20 -3.88494063e+03 -1.74360353e+03 3.77632881e+03 21 2.79780758e+03 -9.05126743e+03 3.89679565e+03 22 9.77404822e+03 -4.13842489e+03 3.79712204e+03 23 2.28284118e+03 -2.02771692e+03 2.71588259e+03 24 1.56363769e+03 -3.31453190e+03 9.52533100e+03 25 -1.30890862e+04 3.47284404e+03 3.74969936e+03 26 -4.75679007e+03 1.33643555e+04 5.75316079e+03 27 -4.29909796e+03 1.47024172e+03 1.05334117e+04 28 -3.34063466e+03 2.66946979e+03 3.39623156e+03 29 9.33805736e+03 6.14198402e+03 1.43156783e+04 30 6.88834634e+03 5.86313544e+03 2.67356788e+03 31 5.97707339e+03 2.09706586e+03 6.92302522e+03 32 1.06380948e+03 5.17834087e+03 7.87552401e+03 ================================================================================ VALGRIND OUTPUT ================================================================================ ==89421== Memcheck, a memory error detector ==89421== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==89421== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==89421== Command: python runner2.py EAM_Dynamo_Mendelev_2018_Tb__MO_522239651961_000 ==89421== ==89421== Conditional jump or move depends on uninitialised value(s) ==89421== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==89421== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==89421== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89421== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89421== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89421== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89421== by 0x551B80: ??? (in /usr/bin/python3.6) ==89421== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89421== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89421== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89421== by 0x509D47: ??? (in /usr/bin/python3.6) ==89421== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89421== ==89421== Conditional jump or move depends on uninitialised value(s) ==89421== at 0x4E63408: internal_utf8_loop (loop.c:298) ==89421== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==89421== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89421== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89421== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89421== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89421== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89421== by 0x551B80: ??? (in /usr/bin/python3.6) ==89421== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89421== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89421== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89421== by 0x509D47: ??? (in /usr/bin/python3.6) ==89421== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89421== ==89421== Conditional jump or move depends on uninitialised value(s) ==89421== at 0x4E63411: internal_utf8_loop (loop.c:303) ==89421== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==89421== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89421== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89421== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89421== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89421== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89421== by 0x551B80: ??? (in /usr/bin/python3.6) ==89421== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89421== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89421== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89421== by 0x509D47: ??? (in /usr/bin/python3.6) ==89421== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89421== ==89421== Conditional jump or move depends on uninitialised value(s) ==89421== at 0x4E63458: internal_utf8_loop (loop.c:298) ==89421== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==89421== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89421== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89421== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89421== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89421== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89421== by 0x551B80: ??? (in /usr/bin/python3.6) ==89421== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89421== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89421== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89421== by 0x509D47: ??? (in /usr/bin/python3.6) ==89421== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89421== ==89421== Conditional jump or move depends on uninitialised value(s) ==89421== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==89421== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==89421== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89421== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89421== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==89421== by 0x4CAD31: ??? (in /usr/bin/python3.6) ==89421== by 0x551B80: ??? (in /usr/bin/python3.6) ==89421== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89421== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89421== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89421== by 0x509D47: ??? (in /usr/bin/python3.6) ==89421== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89421== ==89421== ==89421== HEAP SUMMARY: ==89421== in use at exit: 2,764,995 bytes in 1,647 blocks ==89421== total heap usage: 36,172 allocs, 34,525 frees, 73,426,247 bytes allocated ==89421== ==89421== LEAK SUMMARY: ==89421== definitely lost: 0 bytes in 0 blocks ==89421== indirectly lost: 0 bytes in 0 blocks ==89421== possibly lost: 146,155 bytes in 87 blocks ==89421== still reachable: 2,618,840 bytes in 1,560 blocks ==89421== suppressed: 0 bytes in 0 blocks ==89421== Rerun with --leak-check=full to see details of leaked memory ==89421== ==89421== For counts of detected and suppressed errors, rerun with: -v ==89421== Use --track-origins=yes to see where uninitialised values come from ==89421== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11545 from 636) ================================================================================ 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.