!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_Co__MO_924630542818_005 Supported species : Co random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Co (Configuration in file "config-F-Co.xyz") ----------------------------------------------------------------------------------------------------- Energy = -6.803413875680643 Forces: 1 -7.71647890e+00 -6.43712549e+00 -1.00887898e+01 2 -9.59215823e+00 1.77829630e+01 -9.22142574e+00 3 3.99501804e-01 -1.04882021e+01 9.14388235e+00 4 -8.36732288e+00 6.06005361e+00 4.63553302e+00 5 1.62757366e+01 -1.88617675e+01 -4.98273032e+00 6 5.09727877e+00 7.04496764e-01 -6.93573256e+00 7 3.72431349e+00 -2.73930522e+01 -2.76450654e+01 8 -1.08636966e+01 -1.21214569e+01 3.07435338e+00 9 -5.80468320e+00 -8.95975670e+00 -1.36235439e+01 10 -4.74352230e+00 1.38515035e+01 -1.68981919e+01 11 -5.70356748e+00 -7.98603563e+00 2.95677930e+00 12 -7.85886047e+00 1.01720259e+01 7.81580999e+00 13 -1.05122351e+01 -8.45288854e+00 -4.13434176e+01 14 5.90941942e+00 8.10531664e+00 -4.93081636e+00 15 3.57075792e+01 -5.80675874e+00 1.14220693e+01 16 5.43584207e+00 2.79883655e+01 1.35077900e+01 17 -7.17400871e+00 -4.04334695e+00 -6.31476103e+00 18 2.64447125e-01 3.05363897e+00 7.50344783e+00 19 6.56352153e+00 -5.12996000e+00 5.34064441e+00 20 -2.78353726e+00 6.71271924e+00 4.32691981e+00 21 -1.23118665e+01 -9.42311248e+00 5.63974263e+00 22 1.64236823e+01 2.42674314e+01 2.01837629e+01 23 7.53912101e+00 -4.31292030e+00 6.48677854e+00 24 -6.48324800e+00 2.74609340e+00 3.11556622e+00 25 -1.17123479e+01 -7.76383426e+00 -3.96146727e+00 26 -5.34599694e+00 1.77686987e+01 -9.09288114e+00 27 1.61575121e+01 -3.33883799e+01 1.24777980e+01 28 -2.64604534e+01 2.45275488e+01 5.99029094e+00 29 -6.04983731e+00 -1.20085878e+01 5.64157630e+00 30 6.77598909e+00 1.19555741e+01 3.62020497e+00 31 1.49633604e+01 -5.68438079e+00 9.11134537e+00 32 8.24651614e+00 1.25651368e+01 1.30445278e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Co (Configuration in file "config-T-Co.xyz") ----------------------------------------------------------------------------------------------------- Energy = -6.803413875680643 Forces: 1 -7.71647890e+00 -6.43712549e+00 -1.00887898e+01 2 -9.59215823e+00 1.77829630e+01 -9.22142574e+00 3 3.99501804e-01 -1.04882021e+01 9.14388235e+00 4 -8.36732288e+00 6.06005361e+00 4.63553302e+00 5 1.62757366e+01 -1.88617675e+01 -4.98273032e+00 6 5.09727877e+00 7.04496764e-01 -6.93573256e+00 7 3.72431349e+00 -2.73930522e+01 -2.76450654e+01 8 -1.08636966e+01 -1.21214569e+01 3.07435338e+00 9 -5.80468320e+00 -8.95975670e+00 -1.36235439e+01 10 -4.74352230e+00 1.38515035e+01 -1.68981919e+01 11 -5.70356748e+00 -7.98603563e+00 2.95677930e+00 12 -7.85886047e+00 1.01720259e+01 7.81580999e+00 13 -1.05122351e+01 -8.45288854e+00 -4.13434176e+01 14 5.90941942e+00 8.10531664e+00 -4.93081636e+00 15 3.57075792e+01 -5.80675874e+00 1.14220693e+01 16 5.43584207e+00 2.79883655e+01 1.35077900e+01 17 -7.17400871e+00 -4.04334695e+00 -6.31476103e+00 18 2.64447125e-01 3.05363897e+00 7.50344783e+00 19 6.56352153e+00 -5.12996000e+00 5.34064441e+00 20 -2.78353726e+00 6.71271924e+00 4.32691981e+00 21 -1.23118665e+01 -9.42311248e+00 5.63974263e+00 22 1.64236823e+01 2.42674314e+01 2.01837629e+01 23 7.53912101e+00 -4.31292030e+00 6.48677854e+00 24 -6.48324800e+00 2.74609340e+00 3.11556622e+00 25 -1.17123479e+01 -7.76383426e+00 -3.96146727e+00 26 -5.34599694e+00 1.77686987e+01 -9.09288114e+00 27 1.61575121e+01 -3.33883799e+01 1.24777980e+01 28 -2.64604534e+01 2.45275488e+01 5.99029094e+00 29 -6.04983731e+00 -1.20085878e+01 5.64157630e+00 30 6.77598909e+00 1.19555741e+01 3.62020497e+00 31 1.49633604e+01 -5.68438079e+00 9.11134537e+00 32 8.24651614e+00 1.25651368e+01 1.30445278e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==91981== Memcheck, a memory error detector ==91981== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==91981== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==91981== Command: python runner2.py EAM_Dynamo_ZhouJohnsonWadley_2004_Co__MO_924630542818_005 ==91981== ==91981== Conditional jump or move depends on uninitialised value(s) ==91981== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==91981== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==91981== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==91981== by 0x547A3F: ??? (in /usr/bin/python3.6) ==91981== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==91981== by 0x5BA640: ??? (in /usr/bin/python3.6) ==91981== by 0x551B80: ??? (in /usr/bin/python3.6) ==91981== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==91981== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==91981== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==91981== by 0x509D47: ??? (in /usr/bin/python3.6) ==91981== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==91981== ==91981== Conditional jump or move depends on uninitialised value(s) ==91981== at 0x4E63408: internal_utf8_loop (loop.c:298) ==91981== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==91981== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==91981== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==91981== by 0x547A3F: ??? (in /usr/bin/python3.6) ==91981== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==91981== by 0x5BA640: ??? (in /usr/bin/python3.6) ==91981== by 0x551B80: ??? (in /usr/bin/python3.6) ==91981== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==91981== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==91981== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==91981== by 0x509D47: ??? (in /usr/bin/python3.6) ==91981== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==91981== ==91981== Conditional jump or move depends on uninitialised value(s) ==91981== at 0x4E63411: internal_utf8_loop (loop.c:303) ==91981== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==91981== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==91981== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==91981== by 0x547A3F: ??? (in /usr/bin/python3.6) ==91981== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==91981== by 0x5BA640: ??? (in /usr/bin/python3.6) ==91981== by 0x551B80: ??? (in /usr/bin/python3.6) ==91981== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==91981== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==91981== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==91981== by 0x509D47: ??? (in /usr/bin/python3.6) ==91981== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==91981== ==91981== Conditional jump or move depends on uninitialised value(s) ==91981== at 0x4E63458: internal_utf8_loop (loop.c:298) ==91981== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==91981== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==91981== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==91981== by 0x547A3F: ??? (in /usr/bin/python3.6) ==91981== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==91981== by 0x5BA640: ??? (in /usr/bin/python3.6) ==91981== by 0x551B80: ??? (in /usr/bin/python3.6) ==91981== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==91981== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==91981== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==91981== by 0x509D47: ??? (in /usr/bin/python3.6) ==91981== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==91981== ==91981== Conditional jump or move depends on uninitialised value(s) ==91981== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==91981== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==91981== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==91981== by 0x547A3F: ??? (in /usr/bin/python3.6) ==91981== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==91981== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==91981== by 0x4F8388: ??? (in /usr/bin/python3.6) ==91981== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==91981== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==91981== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==91981== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==91981== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==91981== ==91981== ==91981== HEAP SUMMARY: ==91981== in use at exit: 2,764,995 bytes in 1,647 blocks ==91981== total heap usage: 36,172 allocs, 34,525 frees, 64,212,393 bytes allocated ==91981== ==91981== LEAK SUMMARY: ==91981== definitely lost: 0 bytes in 0 blocks ==91981== indirectly lost: 0 bytes in 0 blocks ==91981== possibly lost: 146,155 bytes in 87 blocks ==91981== still reachable: 2,618,840 bytes in 1,560 blocks ==91981== suppressed: 0 bytes in 0 blocks ==91981== Rerun with --leak-check=full to see details of leaked memory ==91981== ==91981== For counts of detected and suppressed errors, rerun with: -v ==91981== Use --track-origins=yes to see where uninitialised values come from ==91981== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12359 from 649) ================================================================================ 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.