!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 : ThreeBodyCluster_BH_BiswasHamann_1987_Si__MO_019616213550_000 Supported species : Si random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Si (Configuration in file "config-F-Si.xyz") ----------------------------------------------------------------------------------------------------- Energy = 459.0574656570972 Forces: 1 -1.96929128e+01 -1.95391902e+01 -2.85529313e+01 2 -1.83286988e+01 -8.52580881e+00 -6.20652568e+01 3 -6.70688639e+00 -6.09131681e+01 -1.45294469e+01 4 -4.87680406e+01 1.26170879e+01 -6.05526471e+00 5 5.66906486e+00 -4.50578665e+01 -3.71790423e+01 6 2.83617703e+01 -4.67157339e+00 -3.37215429e+01 7 4.45480999e+01 -5.60151493e+01 -2.24721054e+01 8 6.84053109e-01 -5.13884989e+01 -2.02191270e+01 9 -3.99689969e+01 -1.42327937e+01 -5.01815603e+01 10 -1.02709517e+01 6.63568207e+01 -6.27765330e+01 11 -6.48441637e+01 -1.22976548e+01 -8.53861352e+00 12 -5.25171624e+01 3.71349368e+01 1.01257102e+01 13 2.86801242e+01 -8.77867046e+00 -1.06447707e+02 14 3.61114339e+01 3.00996330e+01 -2.71017336e+01 15 1.05460031e+02 5.86068450e+00 -1.18132561e+01 16 1.76814488e+01 1.02043990e+02 3.76713694e+00 17 -4.67770443e+01 -3.12559220e+01 2.72479153e+00 18 -2.59831219e+01 -5.84538620e-01 2.45932742e+01 19 9.03020930e-01 -3.81243655e+01 4.29169486e+01 20 -2.64476991e+01 9.54880048e+00 3.27362814e+01 21 6.24939947e+00 -6.55881301e+01 2.03619477e+01 22 7.47493447e+01 -9.89554615e-01 2.00731323e+01 23 2.15871552e+01 -1.54867713e+01 2.52232168e+01 24 1.02137581e+00 -7.49156931e+00 5.70592356e+01 25 -6.61092863e+01 -4.46604728e+00 3.49362699e+00 26 -1.08304654e+01 7.59542572e+01 8.40866371e+00 27 -1.23780180e+01 -2.08359226e+01 5.84403878e+01 28 -3.73968688e+01 2.86214791e+01 2.51109384e+01 29 1.20212688e+01 9.12681526e+00 5.60964141e+01 30 4.03406362e+01 4.11929538e+01 1.04239202e+01 31 4.57901985e+01 6.93002053e+00 4.39749132e+01 32 1.71618917e+01 4.07557165e+01 4.61235811e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Si (Configuration in file "config-T-Si.xyz") ----------------------------------------------------------------------------------------------------- Energy = 459.0574656570972 Forces: 1 -1.96929128e+01 -1.95391902e+01 -2.85529313e+01 2 -1.83286988e+01 -8.52580881e+00 -6.20652568e+01 3 -6.70688639e+00 -6.09131681e+01 -1.45294469e+01 4 -4.87680406e+01 1.26170879e+01 -6.05526471e+00 5 5.66906486e+00 -4.50578665e+01 -3.71790423e+01 6 2.83617703e+01 -4.67157339e+00 -3.37215429e+01 7 4.45480999e+01 -5.60151493e+01 -2.24721054e+01 8 6.84053109e-01 -5.13884989e+01 -2.02191270e+01 9 -3.99689969e+01 -1.42327937e+01 -5.01815603e+01 10 -1.02709517e+01 6.63568207e+01 -6.27765330e+01 11 -6.48441637e+01 -1.22976548e+01 -8.53861352e+00 12 -5.25171624e+01 3.71349368e+01 1.01257102e+01 13 2.86801242e+01 -8.77867046e+00 -1.06447707e+02 14 3.61114339e+01 3.00996330e+01 -2.71017336e+01 15 1.05460031e+02 5.86068450e+00 -1.18132561e+01 16 1.76814488e+01 1.02043990e+02 3.76713694e+00 17 -4.67770443e+01 -3.12559220e+01 2.72479153e+00 18 -2.59831219e+01 -5.84538620e-01 2.45932742e+01 19 9.03020930e-01 -3.81243655e+01 4.29169486e+01 20 -2.64476991e+01 9.54880048e+00 3.27362814e+01 21 6.24939947e+00 -6.55881301e+01 2.03619477e+01 22 7.47493447e+01 -9.89554615e-01 2.00731323e+01 23 2.15871552e+01 -1.54867713e+01 2.52232168e+01 24 1.02137581e+00 -7.49156931e+00 5.70592356e+01 25 -6.61092863e+01 -4.46604728e+00 3.49362699e+00 26 -1.08304654e+01 7.59542572e+01 8.40866371e+00 27 -1.23780180e+01 -2.08359226e+01 5.84403878e+01 28 -3.73968688e+01 2.86214791e+01 2.51109384e+01 29 1.20212688e+01 9.12681526e+00 5.60964141e+01 30 4.03406362e+01 4.11929538e+01 1.04239202e+01 31 4.57901985e+01 6.93002053e+00 4.39749132e+01 32 1.71618917e+01 4.07557165e+01 4.61235811e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==8800== Memcheck, a memory error detector ==8800== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==8800== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==8800== Command: python runner2.py ThreeBodyCluster_BH_BiswasHamann_1987_Si__MO_019616213550_000 ==8800== ==8800== Conditional jump or move depends on uninitialised value(s) ==8800== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==8800== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==8800== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8800== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8800== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8800== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8800== by 0x551B80: ??? (in /usr/bin/python3.6) ==8800== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8800== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8800== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8800== by 0x509D47: ??? (in /usr/bin/python3.6) ==8800== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8800== ==8800== Conditional jump or move depends on uninitialised value(s) ==8800== at 0x4E63408: internal_utf8_loop (loop.c:298) ==8800== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==8800== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8800== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8800== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8800== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8800== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8800== by 0x551B80: ??? (in /usr/bin/python3.6) ==8800== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8800== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8800== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8800== by 0x509D47: ??? (in /usr/bin/python3.6) ==8800== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8800== ==8800== Conditional jump or move depends on uninitialised value(s) ==8800== at 0x4E63411: internal_utf8_loop (loop.c:303) ==8800== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==8800== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8800== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8800== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8800== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8800== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8800== by 0x551B80: ??? (in /usr/bin/python3.6) ==8800== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8800== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8800== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8800== by 0x509D47: ??? (in /usr/bin/python3.6) ==8800== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8800== ==8800== Conditional jump or move depends on uninitialised value(s) ==8800== at 0x4E63458: internal_utf8_loop (loop.c:298) ==8800== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==8800== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8800== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8800== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8800== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8800== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8800== by 0x551B80: ??? (in /usr/bin/python3.6) ==8800== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8800== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8800== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8800== by 0x509D47: ??? (in /usr/bin/python3.6) ==8800== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8800== ==8800== Conditional jump or move depends on uninitialised value(s) ==8800== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==8800== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==8800== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8800== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8800== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==8800== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==8800== by 0x4F8388: ??? (in /usr/bin/python3.6) ==8800== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==8800== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==8800== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==8800== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==8800== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8800== ==8800== ==8800== HEAP SUMMARY: ==8800== in use at exit: 2,764,995 bytes in 1,647 blocks ==8800== total heap usage: 36,063 allocs, 34,416 frees, 61,160,861 bytes allocated ==8800== ==8800== LEAK SUMMARY: ==8800== definitely lost: 0 bytes in 0 blocks ==8800== indirectly lost: 0 bytes in 0 blocks ==8800== possibly lost: 146,155 bytes in 87 blocks ==8800== still reachable: 2,618,840 bytes in 1,560 blocks ==8800== suppressed: 0 bytes in 0 blocks ==8800== Rerun with --leak-check=full to see details of leaked memory ==8800== ==8800== For counts of detected and suppressed errors, rerun with: -v ==8800== Use --track-origins=yes to see where uninitialised values come from ==8800== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12394 from 657) ================================================================================ 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.