!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 ----------------------------------------------------------------------------------------------------- Results for KIM Model : Morse_Shifted_GirifalcoWeizer_1959HighCutoff_K__MO_836927321152_004 Supported species : K random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = K (Configuration in file "config-F-K.xyz") ----------------------------------------------------------------------------------------------------- Energy = 407.10853938551486 Forces: 1 -7.84727396e+00 -7.59357703e+00 -8.43699404e+00 2 -1.87296321e+00 -2.93640390e+00 -1.39296972e+01 3 -1.57294489e+00 -1.33990473e+01 -3.02691462e+00 4 -1.35786043e+01 -6.00657882e-01 -1.75946628e+00 5 2.00665082e+00 -1.20452991e+01 -9.51913630e+00 6 9.92392462e+00 -2.59603569e+00 -1.10908099e+01 7 1.01015543e+01 -1.31142234e+01 -5.06955914e+00 8 2.15437274e+00 -5.12961683e+00 -3.50767413e+00 9 -9.20582130e+00 2.10911946e+00 -1.26556542e+01 10 -3.95057879e+00 1.25266267e+01 -1.25411318e+01 11 -5.56649301e+00 7.39691982e-01 -2.97462719e+00 12 -1.15647914e+01 1.05795524e+01 -2.38675924e+00 13 3.50089362e+00 5.46431009e-01 -1.69574973e+01 14 9.20864944e+00 8.64726612e+00 -8.00849728e+00 15 1.64031061e+01 2.75974163e+00 -2.01238371e+00 16 2.42853800e+00 1.63686013e+01 -5.32801645e-01 17 -1.15820872e+01 -9.18525369e+00 2.62874720e+00 18 -4.43466162e+00 -2.30241859e+00 3.81673530e+00 19 -2.39173440e+00 -1.15958418e+01 9.96725609e+00 20 -9.30825518e+00 -1.39857458e+00 9.46905512e+00 21 2.15954027e+00 -1.37666414e+01 3.51402375e+00 22 1.58032985e+01 -1.03742738e+00 4.36637637e+00 23 7.87212270e+00 -5.77989204e+00 8.87504287e+00 24 1.73188952e+00 -1.54228529e+00 1.42941322e+01 25 -1.37978344e+01 1.86405098e+00 2.93855058e+00 26 -1.97069958e+00 1.51981598e+01 1.27379886e+00 27 -3.20207082e+00 -1.30272518e+00 1.31409319e+01 28 -1.08152721e+01 8.61522387e+00 7.84600337e+00 29 2.60527958e+00 2.14511358e+00 6.26692623e+00 30 1.09532386e+01 1.11456816e+01 2.97642399e+00 31 1.15309481e+01 1.67756998e+00 1.10623698e+01 32 4.27807929e+00 1.04030907e+01 1.19732304e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = K (Configuration in file "config-T-K.xyz") ----------------------------------------------------------------------------------------------------- Energy = 407.10853938551486 Forces: 1 -7.84727396e+00 -7.59357703e+00 -8.43699404e+00 2 -1.87296321e+00 -2.93640390e+00 -1.39296972e+01 3 -1.57294489e+00 -1.33990473e+01 -3.02691462e+00 4 -1.35786043e+01 -6.00657882e-01 -1.75946628e+00 5 2.00665082e+00 -1.20452991e+01 -9.51913630e+00 6 9.92392462e+00 -2.59603569e+00 -1.10908099e+01 7 1.01015543e+01 -1.31142234e+01 -5.06955914e+00 8 2.15437274e+00 -5.12961683e+00 -3.50767413e+00 9 -9.20582130e+00 2.10911946e+00 -1.26556542e+01 10 -3.95057879e+00 1.25266267e+01 -1.25411318e+01 11 -5.56649301e+00 7.39691982e-01 -2.97462719e+00 12 -1.15647914e+01 1.05795524e+01 -2.38675924e+00 13 3.50089362e+00 5.46431009e-01 -1.69574973e+01 14 9.20864944e+00 8.64726612e+00 -8.00849728e+00 15 1.64031061e+01 2.75974163e+00 -2.01238371e+00 16 2.42853800e+00 1.63686013e+01 -5.32801645e-01 17 -1.15820872e+01 -9.18525369e+00 2.62874720e+00 18 -4.43466162e+00 -2.30241859e+00 3.81673530e+00 19 -2.39173440e+00 -1.15958418e+01 9.96725609e+00 20 -9.30825518e+00 -1.39857458e+00 9.46905512e+00 21 2.15954027e+00 -1.37666414e+01 3.51402375e+00 22 1.58032985e+01 -1.03742738e+00 4.36637637e+00 23 7.87212270e+00 -5.77989204e+00 8.87504287e+00 24 1.73188952e+00 -1.54228529e+00 1.42941322e+01 25 -1.37978344e+01 1.86405098e+00 2.93855058e+00 26 -1.97069958e+00 1.51981598e+01 1.27379886e+00 27 -3.20207082e+00 -1.30272518e+00 1.31409319e+01 28 -1.08152721e+01 8.61522387e+00 7.84600337e+00 29 2.60527958e+00 2.14511358e+00 6.26692623e+00 30 1.09532386e+01 1.11456816e+01 2.97642399e+00 31 1.15309481e+01 1.67756998e+00 1.10623698e+01 32 4.27807929e+00 1.04030907e+01 1.19732304e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==22933== Memcheck, a memory error detector ==22933== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==22933== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==22933== Command: python runner2.py Morse_Shifted_GirifalcoWeizer_1959HighCutoff_K__MO_836927321152_004 ==22933== ==22933== Conditional jump or move depends on uninitialised value(s) ==22933== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==22933== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==22933== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==22933== by 0x547A3F: ??? (in /usr/bin/python3.6) ==22933== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==22933== by 0x5BA640: ??? (in /usr/bin/python3.6) ==22933== by 0x551B80: ??? (in /usr/bin/python3.6) ==22933== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==22933== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==22933== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==22933== by 0x509D47: ??? (in /usr/bin/python3.6) ==22933== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==22933== ==22933== Conditional jump or move depends on uninitialised value(s) ==22933== at 0x4E63408: internal_utf8_loop (loop.c:298) ==22933== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==22933== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==22933== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==22933== by 0x547A3F: ??? (in /usr/bin/python3.6) ==22933== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==22933== by 0x5BA640: ??? (in /usr/bin/python3.6) ==22933== by 0x551B80: ??? (in /usr/bin/python3.6) ==22933== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==22933== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==22933== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==22933== by 0x509D47: ??? (in /usr/bin/python3.6) ==22933== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==22933== ==22933== Conditional jump or move depends on uninitialised value(s) ==22933== at 0x4E63411: internal_utf8_loop (loop.c:303) ==22933== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==22933== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==22933== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==22933== by 0x547A3F: ??? (in /usr/bin/python3.6) ==22933== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==22933== by 0x5BA640: ??? (in /usr/bin/python3.6) ==22933== by 0x551B80: ??? (in /usr/bin/python3.6) ==22933== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==22933== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==22933== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==22933== by 0x509D47: ??? (in /usr/bin/python3.6) ==22933== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==22933== ==22933== Conditional jump or move depends on uninitialised value(s) ==22933== at 0x4E63458: internal_utf8_loop (loop.c:298) ==22933== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==22933== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==22933== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==22933== by 0x547A3F: ??? (in /usr/bin/python3.6) ==22933== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==22933== by 0x5BA640: ??? (in /usr/bin/python3.6) ==22933== by 0x551B80: ??? (in /usr/bin/python3.6) ==22933== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==22933== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==22933== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==22933== by 0x509D47: ??? (in /usr/bin/python3.6) ==22933== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==22933== ==22933== Conditional jump or move depends on uninitialised value(s) ==22933== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==22933== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==22933== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==22933== by 0x547A3F: ??? (in /usr/bin/python3.6) ==22933== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==22933== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==22933== by 0x4F8388: ??? (in /usr/bin/python3.6) ==22933== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==22933== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==22933== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==22933== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==22933== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==22933== ==22933== ==22933== HEAP SUMMARY: ==22933== in use at exit: 2,765,467 bytes in 1,647 blocks ==22933== total heap usage: 31,862 allocs, 30,215 frees, 60,901,734 bytes allocated ==22933== ==22933== LEAK SUMMARY: ==22933== definitely lost: 0 bytes in 0 blocks ==22933== indirectly lost: 0 bytes in 0 blocks ==22933== possibly lost: 146,155 bytes in 87 blocks ==22933== still reachable: 2,619,312 bytes in 1,560 blocks ==22933== suppressed: 0 bytes in 0 blocks ==22933== Rerun with --leak-check=full to see details of leaked memory ==22933== ==22933== For counts of detected and suppressed errors, rerun with: -v ==22933== Use --track-origins=yes to see where uninitialised values come from ==22933== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11205 from 633) ================================================================================ 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.