!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_MishinFarkasMehl_1999_Ni__MO_400591584784_005 Supported species : Ni random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Ni (Configuration in file "config-F-Ni.xyz") ----------------------------------------------------------------------------------------------------- Energy = -43.67237642745365 Forces: 1 -2.87534541e+00 -2.46581605e+00 -3.25628966e+00 2 5.19690103e-01 1.15160832e+00 -2.32374480e+00 3 4.24112634e+00 -4.30834602e+00 1.97641866e-01 4 -2.99905134e+00 1.85002417e+00 1.27655968e+00 5 -2.38085622e+00 -4.65183710e+00 -3.47844113e+00 6 3.03884825e+00 4.26650449e+00 -3.85212832e+00 7 2.67722297e+00 -5.66585123e+00 1.27943145e+00 8 -2.00197707e+00 -2.33342739e+00 -1.88511545e-01 9 -4.21893491e+00 -3.43622338e+00 -6.45187750e+00 10 4.85250837e+00 6.92254525e+00 -4.33761570e+00 11 -4.58418818e-01 -5.64154329e+00 9.03087277e-01 12 -6.16244166e+00 5.87941804e+00 1.65855290e+00 13 -4.96755071e-01 -5.42556151e-01 -4.90527616e+00 14 3.09876475e+00 4.12232256e+00 -3.62082594e+00 15 6.18779265e+00 -4.86080501e+00 -4.38443016e-01 16 -3.03853775e+00 6.61782978e+00 -2.77951337e+00 17 -8.61717739e+00 -4.63047593e+00 -2.87734796e+00 18 2.27457232e+00 6.40222642e+00 -2.63843699e+00 19 2.68928886e+00 -8.03421086e+00 4.34761323e+00 20 -3.74168641e+00 6.42145461e+00 4.72808826e+00 21 -4.38774956e+00 -5.80662409e+00 -1.93230536e+00 22 7.19163555e+00 6.92345827e+00 1.65035707e+00 23 2.54733791e+00 -8.21292506e-01 5.04409263e+00 24 2.54028640e+00 3.37241905e+00 3.65886712e+00 25 -4.77729603e+00 -3.98606037e+00 -8.64679117e-01 26 -9.59926495e-01 6.73631387e+00 -2.54536224e+00 27 2.63430525e+00 -6.88665154e+00 5.09836592e+00 28 -6.17707841e+00 4.69558133e+00 5.44963633e+00 29 -2.07884251e+00 -7.12150319e+00 3.80598002e+00 30 5.69064744e+00 4.88540107e+00 -2.64512513e-02 31 2.29742117e+00 -3.29639939e+00 3.24706933e+00 32 2.89062674e+00 4.24251628e+00 4.17190699e+00 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ni (Configuration in file "config-T-Ni.xyz") ----------------------------------------------------------------------------------------------------- Energy = -43.67237642745365 Forces: 1 -2.87534541e+00 -2.46581605e+00 -3.25628966e+00 2 5.19690103e-01 1.15160832e+00 -2.32374480e+00 3 4.24112634e+00 -4.30834602e+00 1.97641866e-01 4 -2.99905134e+00 1.85002417e+00 1.27655968e+00 5 -2.38085622e+00 -4.65183710e+00 -3.47844113e+00 6 3.03884825e+00 4.26650449e+00 -3.85212832e+00 7 2.67722297e+00 -5.66585123e+00 1.27943145e+00 8 -2.00197707e+00 -2.33342739e+00 -1.88511545e-01 9 -4.21893491e+00 -3.43622338e+00 -6.45187750e+00 10 4.85250837e+00 6.92254525e+00 -4.33761570e+00 11 -4.58418818e-01 -5.64154329e+00 9.03087277e-01 12 -6.16244166e+00 5.87941804e+00 1.65855290e+00 13 -4.96755071e-01 -5.42556151e-01 -4.90527616e+00 14 3.09876475e+00 4.12232256e+00 -3.62082594e+00 15 6.18779265e+00 -4.86080501e+00 -4.38443016e-01 16 -3.03853775e+00 6.61782978e+00 -2.77951337e+00 17 -8.61717739e+00 -4.63047593e+00 -2.87734796e+00 18 2.27457232e+00 6.40222642e+00 -2.63843699e+00 19 2.68928886e+00 -8.03421086e+00 4.34761323e+00 20 -3.74168641e+00 6.42145461e+00 4.72808826e+00 21 -4.38774956e+00 -5.80662409e+00 -1.93230536e+00 22 7.19163555e+00 6.92345827e+00 1.65035707e+00 23 2.54733791e+00 -8.21292506e-01 5.04409263e+00 24 2.54028640e+00 3.37241905e+00 3.65886712e+00 25 -4.77729603e+00 -3.98606037e+00 -8.64679117e-01 26 -9.59926495e-01 6.73631387e+00 -2.54536224e+00 27 2.63430525e+00 -6.88665154e+00 5.09836592e+00 28 -6.17707841e+00 4.69558133e+00 5.44963633e+00 29 -2.07884251e+00 -7.12150319e+00 3.80598002e+00 30 5.69064744e+00 4.88540107e+00 -2.64512513e-02 31 2.29742117e+00 -3.29639939e+00 3.24706933e+00 32 2.89062674e+00 4.24251628e+00 4.17190699e+00 ================================================================================ VALGRIND OUTPUT ================================================================================ ==89631== Memcheck, a memory error detector ==89631== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==89631== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==89631== Command: python runner2.py EAM_Dynamo_MishinFarkasMehl_1999_Ni__MO_400591584784_005 ==89631== ==89631== Conditional jump or move depends on uninitialised value(s) ==89631== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==89631== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==89631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89631== by 0x551B80: ??? (in /usr/bin/python3.6) ==89631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89631== by 0x509D47: ??? (in /usr/bin/python3.6) ==89631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89631== ==89631== Conditional jump or move depends on uninitialised value(s) ==89631== at 0x4E63408: internal_utf8_loop (loop.c:298) ==89631== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==89631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89631== by 0x551B80: ??? (in /usr/bin/python3.6) ==89631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89631== by 0x509D47: ??? (in /usr/bin/python3.6) ==89631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89631== ==89631== Conditional jump or move depends on uninitialised value(s) ==89631== at 0x4E63411: internal_utf8_loop (loop.c:303) ==89631== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==89631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89631== by 0x551B80: ??? (in /usr/bin/python3.6) ==89631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89631== by 0x509D47: ??? (in /usr/bin/python3.6) ==89631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89631== ==89631== Conditional jump or move depends on uninitialised value(s) ==89631== at 0x4E63458: internal_utf8_loop (loop.c:298) ==89631== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==89631== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==89631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89631== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==89631== by 0x5BA640: ??? (in /usr/bin/python3.6) ==89631== by 0x551B80: ??? (in /usr/bin/python3.6) ==89631== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==89631== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==89631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89631== by 0x509D47: ??? (in /usr/bin/python3.6) ==89631== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==89631== ==89631== Conditional jump or move depends on uninitialised value(s) ==89631== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==89631== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==89631== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==89631== by 0x547A3F: ??? (in /usr/bin/python3.6) ==89631== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==89631== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==89631== by 0x4F8388: ??? (in /usr/bin/python3.6) ==89631== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==89631== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==89631== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==89631== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==89631== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==89631== ==89631== ==89631== HEAP SUMMARY: ==89631== in use at exit: 2,764,995 bytes in 1,647 blocks ==89631== total heap usage: 36,172 allocs, 34,525 frees, 73,428,141 bytes allocated ==89631== ==89631== LEAK SUMMARY: ==89631== definitely lost: 0 bytes in 0 blocks ==89631== indirectly lost: 0 bytes in 0 blocks ==89631== possibly lost: 146,155 bytes in 87 blocks ==89631== still reachable: 2,618,840 bytes in 1,560 blocks ==89631== suppressed: 0 bytes in 0 blocks ==89631== Rerun with --leak-check=full to see details of leaked memory ==89631== ==89631== For counts of detected and suppressed errors, rerun with: -v ==89631== Use --track-origins=yes to see where uninitialised values come from ==89631== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12346 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.