!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 : Morse_Shifted_GirifalcoWeizer_1959HighCutoff_Cu__MO_151002396060_004 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 = 82.8202561708962 Forces: 1 -3.97563872e+00 -8.15444329e+00 -8.75055693e+00 2 -3.76977578e+00 6.58024688e+00 -6.98249309e+00 3 4.76324835e+00 -1.28877530e+01 -5.83250452e+00 4 -7.35847120e+00 6.11860741e+00 3.87036455e+00 5 -1.48401753e+00 -1.35260139e+01 -3.51307160e+00 6 8.18521346e+00 6.04551142e+00 -8.82158434e+00 7 7.72208566e+00 -2.47082092e+01 -1.76613733e+01 8 -1.19278686e+01 -8.88763681e+00 -2.47880042e+00 9 -8.38886090e+00 -7.50107565e+00 -1.48873698e+01 10 -3.69318489e+00 1.65874973e+01 -1.74232533e+01 11 -3.61194060e+00 -1.28174838e+01 3.77260756e+00 12 -9.98486479e+00 1.39840592e+01 2.75453766e+00 13 -5.93233182e+00 -1.31461457e+01 -3.56157091e+01 14 7.84155324e+00 9.80288459e+00 -6.91293390e+00 15 3.19816680e+01 -8.10101142e+00 5.92742630e+00 16 3.35664835e+00 2.72441272e+01 1.17141439e+01 17 -1.38541192e+01 -7.08786622e+00 -3.97642822e+00 18 4.48358666e+00 1.14624224e+01 6.98994343e+00 19 6.81077623e+00 -8.41625658e+00 7.82136642e+00 20 -4.91112620e+00 8.31525837e+00 6.65034046e+00 21 -1.20746331e+01 -1.11843830e+01 3.45323203e+00 22 1.84153253e+01 1.94052776e+01 1.80537776e+01 23 7.48392236e+00 -4.44629107e+00 5.74250562e+00 24 -4.47625797e+00 6.58414286e+00 5.76182941e+00 25 -1.14056899e+01 -7.48655117e+00 6.98152798e+00 26 -5.05355700e+00 1.81784487e+01 -8.81210809e+00 27 1.01942876e+01 -2.98436171e+01 1.05049748e+01 28 -2.31547316e+01 1.92250695e+01 4.85586068e+00 29 -7.42801913e+00 -1.09629043e+01 8.17506175e+00 30 8.96029029e+00 1.37046661e+01 4.15194779e+00 31 1.43335782e+01 -7.31574235e+00 1.03282074e+01 32 7.95290518e+00 1.32351649e+01 1.41585312e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Cu (Configuration in file "config-T-Cu.xyz") ----------------------------------------------------------------------------------------------------- Energy = 82.8202561708962 Forces: 1 -3.97563872e+00 -8.15444329e+00 -8.75055693e+00 2 -3.76977578e+00 6.58024688e+00 -6.98249309e+00 3 4.76324835e+00 -1.28877530e+01 -5.83250452e+00 4 -7.35847120e+00 6.11860741e+00 3.87036455e+00 5 -1.48401753e+00 -1.35260139e+01 -3.51307160e+00 6 8.18521346e+00 6.04551142e+00 -8.82158434e+00 7 7.72208566e+00 -2.47082092e+01 -1.76613733e+01 8 -1.19278686e+01 -8.88763681e+00 -2.47880042e+00 9 -8.38886090e+00 -7.50107565e+00 -1.48873698e+01 10 -3.69318489e+00 1.65874973e+01 -1.74232533e+01 11 -3.61194060e+00 -1.28174838e+01 3.77260756e+00 12 -9.98486479e+00 1.39840592e+01 2.75453766e+00 13 -5.93233182e+00 -1.31461457e+01 -3.56157091e+01 14 7.84155324e+00 9.80288459e+00 -6.91293390e+00 15 3.19816680e+01 -8.10101142e+00 5.92742630e+00 16 3.35664835e+00 2.72441272e+01 1.17141439e+01 17 -1.38541192e+01 -7.08786622e+00 -3.97642822e+00 18 4.48358666e+00 1.14624224e+01 6.98994343e+00 19 6.81077623e+00 -8.41625658e+00 7.82136642e+00 20 -4.91112620e+00 8.31525837e+00 6.65034046e+00 21 -1.20746331e+01 -1.11843830e+01 3.45323203e+00 22 1.84153253e+01 1.94052776e+01 1.80537776e+01 23 7.48392236e+00 -4.44629107e+00 5.74250562e+00 24 -4.47625797e+00 6.58414286e+00 5.76182941e+00 25 -1.14056899e+01 -7.48655117e+00 6.98152798e+00 26 -5.05355700e+00 1.81784487e+01 -8.81210809e+00 27 1.01942876e+01 -2.98436171e+01 1.05049748e+01 28 -2.31547316e+01 1.92250695e+01 4.85586068e+00 29 -7.42801913e+00 -1.09629043e+01 8.17506175e+00 30 8.96029029e+00 1.37046661e+01 4.15194779e+00 31 1.43335782e+01 -7.31574235e+00 1.03282074e+01 32 7.95290518e+00 1.32351649e+01 1.41585312e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==97844== Memcheck, a memory error detector ==97844== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==97844== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==97844== Command: python runner2.py Morse_Shifted_GirifalcoWeizer_1959HighCutoff_Cu__MO_151002396060_004 ==97844== ==97844== Conditional jump or move depends on uninitialised value(s) ==97844== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==97844== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==97844== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==97844== by 0x547A3F: ??? (in /usr/bin/python3.6) ==97844== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==97844== by 0x5BA640: ??? (in /usr/bin/python3.6) ==97844== by 0x551B80: ??? (in /usr/bin/python3.6) ==97844== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==97844== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==97844== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==97844== by 0x509D47: ??? (in /usr/bin/python3.6) ==97844== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==97844== ==97844== Conditional jump or move depends on uninitialised value(s) ==97844== at 0x4E63408: internal_utf8_loop (loop.c:298) ==97844== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==97844== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==97844== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==97844== by 0x547A3F: ??? (in /usr/bin/python3.6) ==97844== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==97844== by 0x5BA640: ??? (in /usr/bin/python3.6) ==97844== by 0x551B80: ??? (in /usr/bin/python3.6) ==97844== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==97844== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==97844== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==97844== by 0x509D47: ??? (in /usr/bin/python3.6) ==97844== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==97844== ==97844== Conditional jump or move depends on uninitialised value(s) ==97844== at 0x4E63411: internal_utf8_loop (loop.c:303) ==97844== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==97844== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==97844== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==97844== by 0x547A3F: ??? (in /usr/bin/python3.6) ==97844== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==97844== by 0x5BA640: ??? (in /usr/bin/python3.6) ==97844== by 0x551B80: ??? (in /usr/bin/python3.6) ==97844== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==97844== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==97844== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==97844== by 0x509D47: ??? (in /usr/bin/python3.6) ==97844== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==97844== ==97844== Conditional jump or move depends on uninitialised value(s) ==97844== at 0x4E63458: internal_utf8_loop (loop.c:298) ==97844== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==97844== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==97844== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==97844== by 0x547A3F: ??? (in /usr/bin/python3.6) ==97844== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==97844== by 0x5BA640: ??? (in /usr/bin/python3.6) ==97844== by 0x551B80: ??? (in /usr/bin/python3.6) ==97844== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==97844== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==97844== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==97844== by 0x509D47: ??? (in /usr/bin/python3.6) ==97844== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==97844== ==97844== Conditional jump or move depends on uninitialised value(s) ==97844== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==97844== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==97844== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==97844== by 0x547A3F: ??? (in /usr/bin/python3.6) ==97844== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==97844== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==97844== by 0x4F8388: ??? (in /usr/bin/python3.6) ==97844== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==97844== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==97844== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==97844== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==97844== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==97844== ==97844== ==97844== HEAP SUMMARY: ==97844== in use at exit: 2,764,995 bytes in 1,647 blocks ==97844== total heap usage: 36,557 allocs, 34,910 frees, 61,444,259 bytes allocated ==97844== ==97844== LEAK SUMMARY: ==97844== definitely lost: 0 bytes in 0 blocks ==97844== indirectly lost: 0 bytes in 0 blocks ==97844== possibly lost: 146,155 bytes in 87 blocks ==97844== still reachable: 2,618,840 bytes in 1,560 blocks ==97844== suppressed: 0 bytes in 0 blocks ==97844== Rerun with --leak-check=full to see details of leaked memory ==97844== ==97844== For counts of detected and suppressed errors, rerun with: -v ==97844== Use --track-origins=yes to see where uninitialised values come from ==97844== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12379 from 667) ================================================================================ 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.