!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_MendelevKing_2008_Cu__MO_748636486270_005 Supported species : Cu random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Cu (Configuration in file "config-F-Cu.xyz") ----------------------------------------------------------------------------------------------------- Energy = 18.94671623819985 Forces: 1 -7.24346228e+00 -6.92877774e+00 -1.43570980e+01 2 -9.44836001e+00 1.19704934e+01 -3.59385407e+00 3 1.39803801e+01 -1.19629341e+01 9.23309802e-01 4 -6.01742707e+00 1.21258354e+01 4.90713092e+00 5 3.45099787e+00 -1.77747663e+01 -2.72848854e-01 6 8.06983976e+00 6.25445668e+00 -5.37456324e+00 7 1.36612284e+01 -4.03409200e+01 -4.51486455e+01 8 -2.51184207e+01 -4.72605961e-01 -6.01815445e+00 9 -6.20190473e+00 -2.73169230e+01 -2.92709244e+01 10 5.71877005e+00 1.61890587e+01 -2.93080252e+01 11 -5.90822549e+00 -1.49559311e+01 7.41904250e+00 12 -2.25199804e+01 2.72445562e+01 3.14475921e+01 13 -1.85880746e+01 -1.78144378e+01 -5.62633321e+01 14 4.72442351e+00 5.78075307e+00 -2.81208061e+00 15 5.16057022e+01 -4.78654653e+00 1.55274133e+01 16 8.64138883e+00 3.52548870e+01 2.21632094e+01 17 -1.99099604e+01 -1.63987284e+01 -1.50385009e+01 18 9.33388510e+00 9.75194593e+00 -3.10071940e+00 19 8.07913065e+00 -1.14988973e+01 7.31653472e+00 20 -4.39424316e+00 1.88621262e+01 2.15684293e+01 21 -3.14117484e+01 -1.43461233e+01 1.37822234e+01 22 2.46538894e+01 2.47527959e+01 1.99129438e+01 23 1.32183567e+01 -4.11505104e-01 2.01145508e+01 24 -2.13924099e+00 -1.50993528e+00 2.93463303e+00 25 -1.05976754e+01 -6.68004328e+00 -6.50998052e+00 26 -7.79918747e+00 1.89535963e+01 -1.09093966e+01 27 2.84846605e+01 -4.95755866e+01 1.58626445e+01 28 -4.21027942e+01 3.99667226e+01 2.93833929e+00 29 -1.13426228e+01 -8.16205282e+00 1.04287315e+01 30 7.82592406e+00 1.65354155e+01 5.64153662e+00 31 1.85748161e+01 -6.93152196e+00 1.10987216e+01 32 1.07199349e+01 1.42255938e+01 1.39911371e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Cu (Configuration in file "config-T-Cu.xyz") ----------------------------------------------------------------------------------------------------- Energy = 18.94671623819985 Forces: 1 -7.24346228e+00 -6.92877774e+00 -1.43570980e+01 2 -9.44836001e+00 1.19704934e+01 -3.59385407e+00 3 1.39803801e+01 -1.19629341e+01 9.23309802e-01 4 -6.01742707e+00 1.21258354e+01 4.90713092e+00 5 3.45099787e+00 -1.77747663e+01 -2.72848854e-01 6 8.06983976e+00 6.25445668e+00 -5.37456324e+00 7 1.36612284e+01 -4.03409200e+01 -4.51486455e+01 8 -2.51184207e+01 -4.72605961e-01 -6.01815445e+00 9 -6.20190473e+00 -2.73169230e+01 -2.92709244e+01 10 5.71877005e+00 1.61890587e+01 -2.93080252e+01 11 -5.90822549e+00 -1.49559311e+01 7.41904250e+00 12 -2.25199804e+01 2.72445562e+01 3.14475921e+01 13 -1.85880746e+01 -1.78144378e+01 -5.62633321e+01 14 4.72442351e+00 5.78075307e+00 -2.81208061e+00 15 5.16057022e+01 -4.78654653e+00 1.55274133e+01 16 8.64138883e+00 3.52548870e+01 2.21632094e+01 17 -1.99099604e+01 -1.63987284e+01 -1.50385009e+01 18 9.33388510e+00 9.75194593e+00 -3.10071940e+00 19 8.07913065e+00 -1.14988973e+01 7.31653472e+00 20 -4.39424316e+00 1.88621262e+01 2.15684293e+01 21 -3.14117484e+01 -1.43461233e+01 1.37822234e+01 22 2.46538894e+01 2.47527959e+01 1.99129438e+01 23 1.32183567e+01 -4.11505104e-01 2.01145508e+01 24 -2.13924099e+00 -1.50993528e+00 2.93463303e+00 25 -1.05976754e+01 -6.68004328e+00 -6.50998052e+00 26 -7.79918747e+00 1.89535963e+01 -1.09093966e+01 27 2.84846605e+01 -4.95755866e+01 1.58626445e+01 28 -4.21027942e+01 3.99667226e+01 2.93833929e+00 29 -1.13426228e+01 -8.16205282e+00 1.04287315e+01 30 7.82592406e+00 1.65354155e+01 5.64153662e+00 31 1.85748161e+01 -6.93152196e+00 1.10987216e+01 32 1.07199349e+01 1.42255938e+01 1.39911371e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==88767== Memcheck, a memory error detector ==88767== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==88767== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==88767== Command: python runner2.py EAM_Dynamo_MendelevKing_2008_Cu__MO_748636486270_005 ==88767== ==88767== Conditional jump or move depends on uninitialised value(s) ==88767== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==88767== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==88767== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88767== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88767== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88767== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88767== by 0x551B80: ??? (in /usr/bin/python3.6) ==88767== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88767== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88767== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88767== by 0x509D47: ??? (in /usr/bin/python3.6) ==88767== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88767== ==88767== Conditional jump or move depends on uninitialised value(s) ==88767== at 0x4E63408: internal_utf8_loop (loop.c:298) ==88767== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==88767== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88767== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88767== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88767== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88767== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88767== by 0x551B80: ??? (in /usr/bin/python3.6) ==88767== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88767== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88767== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88767== by 0x509D47: ??? (in /usr/bin/python3.6) ==88767== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88767== ==88767== Conditional jump or move depends on uninitialised value(s) ==88767== at 0x4E63411: internal_utf8_loop (loop.c:303) ==88767== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==88767== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88767== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88767== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88767== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88767== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88767== by 0x551B80: ??? (in /usr/bin/python3.6) ==88767== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88767== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88767== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88767== by 0x509D47: ??? (in /usr/bin/python3.6) ==88767== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88767== ==88767== Conditional jump or move depends on uninitialised value(s) ==88767== at 0x4E63458: internal_utf8_loop (loop.c:298) ==88767== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==88767== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88767== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88767== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88767== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88767== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88767== by 0x551B80: ??? (in /usr/bin/python3.6) ==88767== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88767== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88767== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88767== by 0x509D47: ??? (in /usr/bin/python3.6) ==88767== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88767== ==88767== Conditional jump or move depends on uninitialised value(s) ==88767== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==88767== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==88767== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88767== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88767== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==88767== by 0x4CAD31: ??? (in /usr/bin/python3.6) ==88767== by 0x551B80: ??? (in /usr/bin/python3.6) ==88767== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88767== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88767== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88767== by 0x509D47: ??? (in /usr/bin/python3.6) ==88767== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88767== ==88767== ==88767== HEAP SUMMARY: ==88767== in use at exit: 2,764,995 bytes in 1,647 blocks ==88767== total heap usage: 36,172 allocs, 34,525 frees, 73,427,266 bytes allocated ==88767== ==88767== LEAK SUMMARY: ==88767== definitely lost: 0 bytes in 0 blocks ==88767== indirectly lost: 0 bytes in 0 blocks ==88767== possibly lost: 146,155 bytes in 87 blocks ==88767== still reachable: 2,618,840 bytes in 1,560 blocks ==88767== suppressed: 0 bytes in 0 blocks ==88767== Rerun with --leak-check=full to see details of leaked memory ==88767== ==88767== For counts of detected and suppressed errors, rerun with: -v ==88767== Use --track-origins=yes to see where uninitialised values come from ==88767== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11558 from 651) ================================================================================ 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.