!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_Zr__MO_380166217430_000 Supported species : Zr random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Zr (Configuration in file "config-F-Zr.xyz") ----------------------------------------------------------------------------------------------------- Energy = 30.614594807562142 Forces: 1 -5.89580110e+00 -1.03832577e+01 -1.11084422e+01 2 -5.03107669e+00 6.74282662e+00 -1.06860296e+01 3 6.76878902e+00 -1.89493950e+01 -8.04375143e+00 4 -1.43403963e+01 6.33081691e+00 2.28909988e-01 5 -1.31974983e+00 -1.80703745e+01 -6.64696983e+00 6 1.11389125e+01 7.48454638e+00 -1.23714571e+01 7 1.33924563e+01 -3.24940043e+01 -2.08170520e+01 8 -1.53784058e+01 -1.18663883e+01 -2.49770062e+00 9 -1.19465827e+01 -8.41084729e+00 -1.90804910e+01 10 -4.93728046e+00 2.12406380e+01 -2.25426098e+01 11 -4.49037696e+00 -1.34515070e+01 3.57443328e+00 12 -1.31887741e+01 1.86708100e+01 2.50739490e+00 13 -5.94608477e+00 -1.50468532e+01 -4.43106306e+01 14 1.00447191e+01 1.24752745e+01 -8.49499516e+00 15 4.14374813e+01 -5.11492424e+00 8.43911778e+00 16 7.02807371e+00 3.55194982e+01 1.31414465e+01 17 -2.07035610e+01 -1.37215278e+01 -3.09871241e+00 18 1.16285296e+01 1.43677675e+01 1.03055572e+01 19 4.43308718e+00 -1.56908409e+01 9.39113615e+00 20 -8.29290849e+00 9.17034185e+00 9.98025220e+00 21 -1.31394969e+01 -1.42638251e+01 7.99004233e+00 22 2.24761429e+01 2.46833689e+01 1.69516759e+01 23 6.46879418e+00 -4.54442389e+00 1.30502973e+01 24 3.00381017e+00 7.02900245e+00 7.33192376e+00 25 -1.75949989e+01 -6.49478474e+00 9.94869942e+00 26 -7.31470381e+00 2.43602915e+01 -9.54209072e+00 27 9.30416358e+00 -3.25164092e+01 1.48858161e+01 28 -2.67828005e+01 2.27782585e+01 6.85808744e+00 29 -8.28302369e+00 -1.32135018e+01 1.01330914e+01 30 1.13027640e+01 1.77321624e+01 -1.31679901e+00 31 1.70555727e+01 -1.26376465e+01 1.70908966e+01 32 9.10272571e+00 1.82849079e+01 1.87489532e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Zr (Configuration in file "config-T-Zr.xyz") ----------------------------------------------------------------------------------------------------- Energy = 30.614594807562142 Forces: 1 -5.89580110e+00 -1.03832577e+01 -1.11084422e+01 2 -5.03107669e+00 6.74282662e+00 -1.06860296e+01 3 6.76878902e+00 -1.89493950e+01 -8.04375143e+00 4 -1.43403963e+01 6.33081691e+00 2.28909988e-01 5 -1.31974983e+00 -1.80703745e+01 -6.64696983e+00 6 1.11389125e+01 7.48454638e+00 -1.23714571e+01 7 1.33924563e+01 -3.24940043e+01 -2.08170520e+01 8 -1.53784058e+01 -1.18663883e+01 -2.49770062e+00 9 -1.19465827e+01 -8.41084729e+00 -1.90804910e+01 10 -4.93728046e+00 2.12406380e+01 -2.25426098e+01 11 -4.49037696e+00 -1.34515070e+01 3.57443328e+00 12 -1.31887741e+01 1.86708100e+01 2.50739490e+00 13 -5.94608477e+00 -1.50468532e+01 -4.43106306e+01 14 1.00447191e+01 1.24752745e+01 -8.49499516e+00 15 4.14374813e+01 -5.11492424e+00 8.43911778e+00 16 7.02807371e+00 3.55194982e+01 1.31414465e+01 17 -2.07035610e+01 -1.37215278e+01 -3.09871241e+00 18 1.16285296e+01 1.43677675e+01 1.03055572e+01 19 4.43308718e+00 -1.56908409e+01 9.39113615e+00 20 -8.29290849e+00 9.17034185e+00 9.98025220e+00 21 -1.31394969e+01 -1.42638251e+01 7.99004233e+00 22 2.24761429e+01 2.46833689e+01 1.69516759e+01 23 6.46879418e+00 -4.54442389e+00 1.30502973e+01 24 3.00381017e+00 7.02900245e+00 7.33192376e+00 25 -1.75949989e+01 -6.49478474e+00 9.94869942e+00 26 -7.31470381e+00 2.43602915e+01 -9.54209072e+00 27 9.30416358e+00 -3.25164092e+01 1.48858161e+01 28 -2.67828005e+01 2.27782585e+01 6.85808744e+00 29 -8.28302369e+00 -1.32135018e+01 1.01330914e+01 30 1.13027640e+01 1.77321624e+01 -1.31679901e+00 31 1.70555727e+01 -1.26376465e+01 1.70908966e+01 32 9.10272571e+00 1.82849079e+01 1.87489532e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==93631== Memcheck, a memory error detector ==93631== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==93631== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==93631== Command: python runner2.py EAM_Dynamo_ZhouWadleyJohnson_2001NISTretabulation_Zr__MO_380166217430_000 ==93631== ==93631== Conditional jump or move depends on uninitialised value(s) ==93631== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==93631== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==93631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93631== by 0x551B80: ??? (in /usr/bin/python3.6) ==93631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93631== by 0x509D47: ??? (in /usr/bin/python3.6) ==93631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93631== ==93631== Conditional jump or move depends on uninitialised value(s) ==93631== at 0x4E63408: internal_utf8_loop (loop.c:298) ==93631== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==93631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93631== by 0x551B80: ??? (in /usr/bin/python3.6) ==93631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93631== by 0x509D47: ??? (in /usr/bin/python3.6) ==93631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93631== ==93631== Conditional jump or move depends on uninitialised value(s) ==93631== at 0x4E63411: internal_utf8_loop (loop.c:303) ==93631== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==93631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93631== by 0x551B80: ??? (in /usr/bin/python3.6) ==93631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93631== by 0x509D47: ??? (in /usr/bin/python3.6) ==93631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93631== ==93631== Conditional jump or move depends on uninitialised value(s) ==93631== at 0x4E63458: internal_utf8_loop (loop.c:298) ==93631== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==93631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==93631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==93631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==93631== by 0x551B80: ??? (in /usr/bin/python3.6) ==93631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==93631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==93631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93631== by 0x509D47: ??? (in /usr/bin/python3.6) ==93631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==93631== ==93631== Conditional jump or move depends on uninitialised value(s) ==93631== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==93631== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==93631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==93631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==93631== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==93631== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==93631== by 0x4F8388: ??? (in /usr/bin/python3.6) ==93631== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==93631== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==93631== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==93631== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==93631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==93631== ==93631== ==93631== HEAP SUMMARY: ==93631== in use at exit: 2,764,995 bytes in 1,647 blocks ==93631== total heap usage: 38,180 allocs, 36,533 frees, 68,755,471 bytes allocated ==93631== ==93631== LEAK SUMMARY: ==93631== definitely lost: 0 bytes in 0 blocks ==93631== indirectly lost: 0 bytes in 0 blocks ==93631== possibly lost: 146,155 bytes in 87 blocks ==93631== still reachable: 2,618,840 bytes in 1,560 blocks ==93631== suppressed: 0 bytes in 0 blocks ==93631== Rerun with --leak-check=full to see details of leaked memory ==93631== ==93631== For counts of detected and suppressed errors, rerun with: -v ==93631== Use --track-origins=yes to see where uninitialised values come from ==93631== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11170 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.