!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 : ThreeBodyBondOrder_KDS_KhorDasSarma_1988_Ge__MO_216597146527_000 Supported species : Ge random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Ge (Configuration in file "config-F-Ge.xyz") ----------------------------------------------------------------------------------------------------- Energy = 1558.0651027874762 Forces: 1 -3.42029674e+01 -3.57285713e+01 -4.64973940e+01 2 -4.49697084e+00 2.23249063e+01 -8.49243951e+01 3 -1.89494483e+01 -8.24080365e+01 1.16500523e+01 4 -7.29977387e+01 9.46186706e+00 1.83786840e+01 5 3.63956319e+01 -6.24070552e+01 -4.00411879e+01 6 3.41553600e+01 7.07119121e-01 -5.21372710e+01 7 5.45902549e+01 -1.15022180e+02 -6.16235662e+01 8 -7.09097843e+01 -6.24893722e+01 -3.09972958e+01 9 -4.23506605e+01 2.36079057e+00 -7.62196144e+01 10 -2.22027061e+01 7.52231239e+01 -8.56589001e+01 11 -3.83106274e+01 -5.51080784e+01 2.89709928e+00 12 -5.95171171e+01 5.58793022e+01 3.63094451e-01 13 -2.73925002e+00 -3.36289999e+01 -1.62730951e+02 14 4.13422024e+01 4.65090651e+01 -3.42463703e+01 15 1.73956557e+02 1.34454203e+01 -2.13209528e+01 16 2.44805458e+01 1.52260260e+02 2.71530710e+01 17 -4.81565135e+01 -2.70046234e+01 4.46678784e+00 18 -3.33035139e+01 1.82775191e+01 8.19471497e+00 19 -4.74101275e+00 -4.47350057e+01 5.16748084e+01 20 -2.67904223e+01 2.88060447e+00 2.35316610e+01 21 -1.46745753e+01 -1.03087174e+02 3.83190948e+01 22 1.34016908e+02 3.32929705e+01 5.22774208e+01 23 2.48233693e+01 -1.20329217e+01 4.04847065e+01 24 -3.99243801e+00 -1.73923589e+01 7.85380217e+01 25 -6.60447882e+01 -6.00896068e+00 5.12718138e+01 26 -3.64126132e+01 1.03513076e+02 -1.43674824e+01 27 -4.41651096e+01 -5.90108870e+01 6.83372710e+01 28 -5.72835699e+01 3.14126588e+01 1.79181113e+01 29 -1.27981984e+01 1.72111186e+01 5.79819144e+01 30 6.04676130e+01 5.97079557e+01 1.04008983e+01 31 8.22072005e+01 -8.82848823e+00 7.16749369e+01 32 4.86043825e+01 8.04249557e+01 7.52512187e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ge (Configuration in file "config-T-Ge.xyz") ----------------------------------------------------------------------------------------------------- Energy = 1558.0651027874762 Forces: 1 -3.42029674e+01 -3.57285713e+01 -4.64973940e+01 2 -4.49697084e+00 2.23249063e+01 -8.49243951e+01 3 -1.89494483e+01 -8.24080365e+01 1.16500523e+01 4 -7.29977387e+01 9.46186706e+00 1.83786840e+01 5 3.63956319e+01 -6.24070552e+01 -4.00411879e+01 6 3.41553600e+01 7.07119121e-01 -5.21372710e+01 7 5.45902549e+01 -1.15022180e+02 -6.16235662e+01 8 -7.09097843e+01 -6.24893722e+01 -3.09972958e+01 9 -4.23506605e+01 2.36079057e+00 -7.62196144e+01 10 -2.22027061e+01 7.52231239e+01 -8.56589001e+01 11 -3.83106274e+01 -5.51080784e+01 2.89709928e+00 12 -5.95171171e+01 5.58793022e+01 3.63094451e-01 13 -2.73925002e+00 -3.36289999e+01 -1.62730951e+02 14 4.13422024e+01 4.65090651e+01 -3.42463703e+01 15 1.73956557e+02 1.34454203e+01 -2.13209528e+01 16 2.44805458e+01 1.52260260e+02 2.71530710e+01 17 -4.81565135e+01 -2.70046234e+01 4.46678784e+00 18 -3.33035139e+01 1.82775191e+01 8.19471497e+00 19 -4.74101275e+00 -4.47350057e+01 5.16748084e+01 20 -2.67904223e+01 2.88060447e+00 2.35316610e+01 21 -1.46745753e+01 -1.03087174e+02 3.83190948e+01 22 1.34016908e+02 3.32929705e+01 5.22774208e+01 23 2.48233693e+01 -1.20329217e+01 4.04847065e+01 24 -3.99243801e+00 -1.73923589e+01 7.85380217e+01 25 -6.60447882e+01 -6.00896068e+00 5.12718138e+01 26 -3.64126132e+01 1.03513076e+02 -1.43674824e+01 27 -4.41651096e+01 -5.90108870e+01 6.83372710e+01 28 -5.72835699e+01 3.14126588e+01 1.79181113e+01 29 -1.27981984e+01 1.72111186e+01 5.79819144e+01 30 6.04676130e+01 5.97079557e+01 1.04008983e+01 31 8.22072005e+01 -8.82848823e+00 7.16749369e+01 32 4.86043825e+01 8.04249557e+01 7.52512187e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==8568== Memcheck, a memory error detector ==8568== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==8568== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==8568== Command: python runner2.py ThreeBodyBondOrder_KDS_KhorDasSarma_1988_Ge__MO_216597146527_000 ==8568== ==8568== Conditional jump or move depends on uninitialised value(s) ==8568== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==8568== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==8568== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8568== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8568== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8568== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8568== by 0x551B80: ??? (in /usr/bin/python3.6) ==8568== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8568== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8568== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8568== by 0x509D47: ??? (in /usr/bin/python3.6) ==8568== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8568== ==8568== Conditional jump or move depends on uninitialised value(s) ==8568== at 0x4E63408: internal_utf8_loop (loop.c:298) ==8568== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==8568== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8568== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8568== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8568== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8568== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8568== by 0x551B80: ??? (in /usr/bin/python3.6) ==8568== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8568== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8568== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8568== by 0x509D47: ??? (in /usr/bin/python3.6) ==8568== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8568== ==8568== Conditional jump or move depends on uninitialised value(s) ==8568== at 0x4E63411: internal_utf8_loop (loop.c:303) ==8568== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==8568== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8568== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8568== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8568== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8568== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8568== by 0x551B80: ??? (in /usr/bin/python3.6) ==8568== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8568== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8568== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8568== by 0x509D47: ??? (in /usr/bin/python3.6) ==8568== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8568== ==8568== Conditional jump or move depends on uninitialised value(s) ==8568== at 0x4E63458: internal_utf8_loop (loop.c:298) ==8568== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==8568== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==8568== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8568== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8568== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==8568== by 0x5BA640: ??? (in /usr/bin/python3.6) ==8568== by 0x551B80: ??? (in /usr/bin/python3.6) ==8568== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==8568== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==8568== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8568== by 0x509D47: ??? (in /usr/bin/python3.6) ==8568== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==8568== ==8568== Conditional jump or move depends on uninitialised value(s) ==8568== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==8568== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==8568== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==8568== by 0x547A3F: ??? (in /usr/bin/python3.6) ==8568== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==8568== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==8568== by 0x4F8388: ??? (in /usr/bin/python3.6) ==8568== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==8568== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==8568== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==8568== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==8568== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==8568== ==8568== ==8568== HEAP SUMMARY: ==8568== in use at exit: 2,764,995 bytes in 1,647 blocks ==8568== total heap usage: 36,056 allocs, 34,409 frees, 61,163,260 bytes allocated ==8568== ==8568== LEAK SUMMARY: ==8568== definitely lost: 0 bytes in 0 blocks ==8568== indirectly lost: 0 bytes in 0 blocks ==8568== possibly lost: 146,155 bytes in 87 blocks ==8568== still reachable: 2,618,840 bytes in 1,560 blocks ==8568== suppressed: 0 bytes in 0 blocks ==8568== Rerun with --leak-check=full to see details of leaked memory ==8568== ==8568== For counts of detected and suppressed errors, rerun with: -v ==8568== Use --track-origins=yes to see where uninitialised values come from ==8568== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12385 from 661) ================================================================================ 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.