!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_MagneticCubic_MendelevHanSrolovitz_2003_Fe__MO_856295952425_002 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 = -12.952720171829725 Forces: 1 -5.87390507e+00 -4.84725585e+00 -8.96036533e+00 2 -9.51453644e+00 1.81155169e+01 -5.95879056e+00 3 9.44585509e+00 -8.06745996e+00 -1.11574291e+00 4 -6.44851549e+00 4.99687440e+00 2.42348449e+00 5 1.12301562e+01 -1.88081719e+01 1.99660501e+00 6 2.20036414e+00 1.52072896e+00 -2.88523803e+00 7 1.54555860e+00 -2.80440210e+01 -3.27455228e+01 8 -1.10151713e+01 -8.67682859e+00 -9.12131017e+00 9 -2.83012543e+00 -4.89971308e+00 -8.22294628e+00 10 -6.36218002e+00 8.28876764e+00 -1.44713700e+01 11 -1.92942790e+00 -7.84689209e+00 -5.03420064e-03 12 -5.78101278e+00 1.08945057e+01 1.76584798e+00 13 -1.40928840e+01 -1.23163327e+01 -3.86032105e+01 14 6.99241990e+00 1.16790911e+01 -8.64130727e+00 15 3.02632571e+01 -1.30592957e+01 1.62195601e+01 16 1.62651102e+00 2.22182786e+01 1.75475705e+01 17 -1.61418710e+01 -2.23070778e+00 -5.73034865e+00 18 1.58347484e+00 4.25906315e+00 2.13663464e+00 19 1.37563803e+01 -1.00153907e+01 1.04492599e+01 20 -5.48635884e+00 9.23896265e+00 3.89280793e+00 21 -1.12800633e+01 -9.97077310e+00 8.01845674e+00 22 2.00727711e+01 2.29259044e+01 2.27547286e+01 23 9.70757114e+00 -5.27105869e+00 5.26362629e+00 24 -8.39078336e+00 6.29691079e+00 3.76629100e+00 25 -8.58804680e+00 -6.52143864e+00 6.14567984e+00 26 1.43759992e+00 1.20868384e+01 -7.17963245e+00 27 2.19335344e+01 -3.65076645e+01 7.82346708e+00 28 -3.21540754e+01 2.72412502e+01 3.55139704e+00 29 -7.45086421e+00 2.08132725e+00 9.99799526e+00 30 5.71752038e+00 9.73752321e+00 5.72126280e+00 31 1.03391007e+01 -4.54757039e+00 6.76153368e+00 32 5.48774659e+00 1.00490313e+01 7.40461028e+00 MONOATOMIC STRUCTURE (pbc=True)-- Species = Fe (Configuration in file "config-T-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = -12.952720171829725 Forces: 1 -5.87390507e+00 -4.84725585e+00 -8.96036533e+00 2 -9.51453644e+00 1.81155169e+01 -5.95879056e+00 3 9.44585509e+00 -8.06745996e+00 -1.11574291e+00 4 -6.44851549e+00 4.99687440e+00 2.42348449e+00 5 1.12301562e+01 -1.88081719e+01 1.99660501e+00 6 2.20036414e+00 1.52072896e+00 -2.88523803e+00 7 1.54555860e+00 -2.80440210e+01 -3.27455228e+01 8 -1.10151713e+01 -8.67682859e+00 -9.12131017e+00 9 -2.83012543e+00 -4.89971308e+00 -8.22294628e+00 10 -6.36218002e+00 8.28876764e+00 -1.44713700e+01 11 -1.92942790e+00 -7.84689209e+00 -5.03420064e-03 12 -5.78101278e+00 1.08945057e+01 1.76584798e+00 13 -1.40928840e+01 -1.23163327e+01 -3.86032105e+01 14 6.99241990e+00 1.16790911e+01 -8.64130727e+00 15 3.02632571e+01 -1.30592957e+01 1.62195601e+01 16 1.62651102e+00 2.22182786e+01 1.75475705e+01 17 -1.61418710e+01 -2.23070778e+00 -5.73034865e+00 18 1.58347484e+00 4.25906315e+00 2.13663464e+00 19 1.37563803e+01 -1.00153907e+01 1.04492599e+01 20 -5.48635884e+00 9.23896265e+00 3.89280793e+00 21 -1.12800633e+01 -9.97077310e+00 8.01845674e+00 22 2.00727711e+01 2.29259044e+01 2.27547286e+01 23 9.70757114e+00 -5.27105869e+00 5.26362629e+00 24 -8.39078336e+00 6.29691079e+00 3.76629100e+00 25 -8.58804680e+00 -6.52143864e+00 6.14567984e+00 26 1.43759992e+00 1.20868384e+01 -7.17963245e+00 27 2.19335344e+01 -3.65076645e+01 7.82346708e+00 28 -3.21540754e+01 2.72412502e+01 3.55139704e+00 29 -7.45086421e+00 2.08132725e+00 9.99799526e+00 30 5.71752038e+00 9.73752321e+00 5.72126280e+00 31 1.03391007e+01 -4.54757039e+00 6.76153368e+00 32 5.48774659e+00 1.00490313e+01 7.40461028e+00 ================================================================================ VALGRIND OUTPUT ================================================================================ ==95005== Memcheck, a memory error detector ==95005== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==95005== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==95005== Command: python runner2.py EAM_MagneticCubic_MendelevHanSrolovitz_2003_Fe__MO_856295952425_002 ==95005== ==95005== Conditional jump or move depends on uninitialised value(s) ==95005== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==95005== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==95005== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==95005== by 0x547A3F: ??? (in /usr/bin/python3.6) ==95005== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==95005== by 0x5BA640: ??? (in /usr/bin/python3.6) ==95005== by 0x551B80: ??? (in /usr/bin/python3.6) ==95005== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==95005== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==95005== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==95005== by 0x509D47: ??? (in /usr/bin/python3.6) ==95005== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==95005== ==95005== Conditional jump or move depends on uninitialised value(s) ==95005== at 0x4E63408: internal_utf8_loop (loop.c:298) ==95005== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==95005== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==95005== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==95005== by 0x547A3F: ??? (in /usr/bin/python3.6) ==95005== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==95005== by 0x5BA640: ??? (in /usr/bin/python3.6) ==95005== by 0x551B80: ??? (in /usr/bin/python3.6) ==95005== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==95005== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==95005== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==95005== by 0x509D47: ??? (in /usr/bin/python3.6) ==95005== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==95005== ==95005== Conditional jump or move depends on uninitialised value(s) ==95005== at 0x4E63411: internal_utf8_loop (loop.c:303) ==95005== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==95005== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==95005== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==95005== by 0x547A3F: ??? (in /usr/bin/python3.6) ==95005== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==95005== by 0x5BA640: ??? (in /usr/bin/python3.6) ==95005== by 0x551B80: ??? (in /usr/bin/python3.6) ==95005== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==95005== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==95005== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==95005== by 0x509D47: ??? (in /usr/bin/python3.6) ==95005== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==95005== ==95005== Conditional jump or move depends on uninitialised value(s) ==95005== at 0x4E63458: internal_utf8_loop (loop.c:298) ==95005== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==95005== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==95005== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==95005== by 0x547A3F: ??? (in /usr/bin/python3.6) ==95005== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==95005== by 0x5BA640: ??? (in /usr/bin/python3.6) ==95005== by 0x551B80: ??? (in /usr/bin/python3.6) ==95005== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==95005== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==95005== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==95005== by 0x509D47: ??? (in /usr/bin/python3.6) ==95005== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==95005== ==95005== Conditional jump or move depends on uninitialised value(s) ==95005== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==95005== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==95005== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==95005== by 0x547A3F: ??? (in /usr/bin/python3.6) ==95005== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==95005== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==95005== by 0x4F8388: ??? (in /usr/bin/python3.6) ==95005== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==95005== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==95005== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==95005== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==95005== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==95005== Potential info: Fe Mendelev potential Atomic number: 26 Potential info: Fe Mendelev potential Atomic number: 26 Potential info: Fe Mendelev potential Atomic number: 26 Potential info: Fe Mendelev potential Atomic number: 26 ==95005== ==95005== HEAP SUMMARY: ==95005== in use at exit: 2,764,995 bytes in 1,647 blocks ==95005== total heap usage: 36,162 allocs, 34,515 frees, 61,284,407 bytes allocated ==95005== ==95005== LEAK SUMMARY: ==95005== definitely lost: 0 bytes in 0 blocks ==95005== indirectly lost: 0 bytes in 0 blocks ==95005== possibly lost: 146,155 bytes in 87 blocks ==95005== still reachable: 2,618,840 bytes in 1,560 blocks ==95005== suppressed: 0 bytes in 0 blocks ==95005== Rerun with --leak-check=full to see details of leaked memory ==95005== ==95005== For counts of detected and suppressed errors, rerun with: -v ==95005== Use --track-origins=yes to see where uninitialised values come from ==95005== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12387 from 659) ================================================================================ 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.