!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_AcklandTichyVitek_1987v2_Ni__MO_769632475533_000 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 = 0.00026284285494249104 Forces: 1 -7.71997468e+00 -7.01541468e+00 -1.30501756e+01 2 -1.13276720e+01 2.13222551e+01 -7.86158163e+00 3 8.80340620e+00 -1.06553565e+01 4.63531064e+00 4 -8.13911434e+00 9.45430526e+00 6.36681583e+00 5 1.42916992e+01 -2.38053797e+01 2.30969351e+00 6 2.21365700e+00 2.14739876e+00 -3.20025556e+00 7 3.72874831e+00 -3.52671991e+01 -4.11861297e+01 8 -1.79490799e+01 -1.11628644e+01 -1.18776674e+01 9 -1.24401658e+01 -6.48809276e+00 -1.82364052e+01 10 -6.17219968e+00 1.96804700e+01 -2.15539558e+01 11 -2.18127752e+00 -1.52160598e+01 1.81268964e+01 12 -6.75024502e+00 9.45454413e+00 6.47088972e+00 13 -1.25838331e+01 -1.65064283e+01 -4.78975943e+01 14 4.91052773e+00 6.55685510e+00 -3.71410660e+00 15 4.23286349e+01 -3.50217037e+00 1.80435643e+01 16 6.27428759e+00 2.82693034e+01 1.99199156e+01 17 -1.88926846e+01 -1.13914162e+01 -1.59575294e+01 18 3.10976140e+00 8.22977539e+00 -2.94326719e+00 19 1.61701822e+01 -1.06303313e+01 1.17848488e+01 20 -4.83749925e+00 1.58483599e+01 1.33199965e+01 21 -1.63992580e+01 -9.53100491e+00 1.08934489e+01 22 2.56800538e+01 2.78619841e+01 3.08006752e+01 23 3.83214267e+00 -5.04548869e-01 6.08289811e+00 24 3.51250216e-01 -3.76767831e+00 4.64778212e+00 25 -9.02411727e+00 -1.12216965e+01 -8.90195694e+00 26 -4.42746351e+00 1.66903461e+01 -1.24334378e+01 27 2.48145170e+01 -4.25195607e+01 1.65683106e+01 28 -3.84381679e+01 3.69687884e+01 5.57079584e+00 29 -1.01423944e+01 1.11897323e+00 9.75116839e+00 30 5.98028368e+00 1.17641377e+01 -2.31352862e+00 31 1.60505494e+01 -9.61145255e+00 1.22140943e+01 32 8.88544557e+00 1.34291585e+01 1.36204871e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ni (Configuration in file "config-T-Ni.xyz") ----------------------------------------------------------------------------------------------------- Energy = 0.00026284285494249104 Forces: 1 -7.71997468e+00 -7.01541468e+00 -1.30501756e+01 2 -1.13276720e+01 2.13222551e+01 -7.86158163e+00 3 8.80340620e+00 -1.06553565e+01 4.63531064e+00 4 -8.13911434e+00 9.45430526e+00 6.36681583e+00 5 1.42916992e+01 -2.38053797e+01 2.30969351e+00 6 2.21365700e+00 2.14739876e+00 -3.20025556e+00 7 3.72874831e+00 -3.52671991e+01 -4.11861297e+01 8 -1.79490799e+01 -1.11628644e+01 -1.18776674e+01 9 -1.24401658e+01 -6.48809276e+00 -1.82364052e+01 10 -6.17219968e+00 1.96804700e+01 -2.15539558e+01 11 -2.18127752e+00 -1.52160598e+01 1.81268964e+01 12 -6.75024502e+00 9.45454413e+00 6.47088972e+00 13 -1.25838331e+01 -1.65064283e+01 -4.78975943e+01 14 4.91052773e+00 6.55685510e+00 -3.71410660e+00 15 4.23286349e+01 -3.50217037e+00 1.80435643e+01 16 6.27428759e+00 2.82693034e+01 1.99199156e+01 17 -1.88926846e+01 -1.13914162e+01 -1.59575294e+01 18 3.10976140e+00 8.22977539e+00 -2.94326719e+00 19 1.61701822e+01 -1.06303313e+01 1.17848488e+01 20 -4.83749925e+00 1.58483599e+01 1.33199965e+01 21 -1.63992580e+01 -9.53100491e+00 1.08934489e+01 22 2.56800538e+01 2.78619841e+01 3.08006752e+01 23 3.83214267e+00 -5.04548869e-01 6.08289811e+00 24 3.51250216e-01 -3.76767831e+00 4.64778212e+00 25 -9.02411727e+00 -1.12216965e+01 -8.90195694e+00 26 -4.42746351e+00 1.66903461e+01 -1.24334378e+01 27 2.48145170e+01 -4.25195607e+01 1.65683106e+01 28 -3.84381679e+01 3.69687884e+01 5.57079584e+00 29 -1.01423944e+01 1.11897323e+00 9.75116839e+00 30 5.98028368e+00 1.17641377e+01 -2.31352862e+00 31 1.60505494e+01 -9.61145255e+00 1.22140943e+01 32 8.88544557e+00 1.34291585e+01 1.36204871e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==84653== Memcheck, a memory error detector ==84653== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==84653== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==84653== Command: python runner2.py EAM_Dynamo_AcklandTichyVitek_1987v2_Ni__MO_769632475533_000 ==84653== ==84653== Conditional jump or move depends on uninitialised value(s) ==84653== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==84653== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==84653== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==84653== by 0x547A3F: ??? (in /usr/bin/python3.6) ==84653== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==84653== by 0x5BA640: ??? (in /usr/bin/python3.6) ==84653== by 0x551B80: ??? (in /usr/bin/python3.6) ==84653== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==84653== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==84653== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==84653== by 0x509D47: ??? (in /usr/bin/python3.6) ==84653== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==84653== ==84653== Conditional jump or move depends on uninitialised value(s) ==84653== at 0x4E63408: internal_utf8_loop (loop.c:298) ==84653== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==84653== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==84653== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==84653== by 0x547A3F: ??? (in /usr/bin/python3.6) ==84653== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==84653== by 0x5BA640: ??? (in /usr/bin/python3.6) ==84653== by 0x551B80: ??? (in /usr/bin/python3.6) ==84653== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==84653== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==84653== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==84653== by 0x509D47: ??? (in /usr/bin/python3.6) ==84653== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==84653== ==84653== Conditional jump or move depends on uninitialised value(s) ==84653== at 0x4E63411: internal_utf8_loop (loop.c:303) ==84653== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==84653== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==84653== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==84653== by 0x547A3F: ??? (in /usr/bin/python3.6) ==84653== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==84653== by 0x5BA640: ??? (in /usr/bin/python3.6) ==84653== by 0x551B80: ??? (in /usr/bin/python3.6) ==84653== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==84653== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==84653== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==84653== by 0x509D47: ??? (in /usr/bin/python3.6) ==84653== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==84653== ==84653== Conditional jump or move depends on uninitialised value(s) ==84653== at 0x4E63458: internal_utf8_loop (loop.c:298) ==84653== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==84653== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==84653== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==84653== by 0x547A3F: ??? (in /usr/bin/python3.6) ==84653== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==84653== by 0x5BA640: ??? (in /usr/bin/python3.6) ==84653== by 0x551B80: ??? (in /usr/bin/python3.6) ==84653== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==84653== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==84653== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==84653== by 0x509D47: ??? (in /usr/bin/python3.6) ==84653== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==84653== ==84653== Conditional jump or move depends on uninitialised value(s) ==84653== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==84653== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==84653== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==84653== by 0x547A3F: ??? (in /usr/bin/python3.6) ==84653== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==84653== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==84653== by 0x4F8388: ??? (in /usr/bin/python3.6) ==84653== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==84653== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==84653== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==84653== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==84653== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==84653== ==84653== ==84653== HEAP SUMMARY: ==84653== in use at exit: 2,764,995 bytes in 1,647 blocks ==84653== total heap usage: 36,172 allocs, 34,525 frees, 73,425,834 bytes allocated ==84653== ==84653== LEAK SUMMARY: ==84653== definitely lost: 0 bytes in 0 blocks ==84653== indirectly lost: 0 bytes in 0 blocks ==84653== possibly lost: 146,155 bytes in 87 blocks ==84653== still reachable: 2,618,840 bytes in 1,560 blocks ==84653== suppressed: 0 bytes in 0 blocks ==84653== Rerun with --leak-check=full to see details of leaked memory ==84653== ==84653== For counts of detected and suppressed errors, rerun with: -v ==84653== Use --track-origins=yes to see where uninitialised values come from ==84653== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12350 from 653) ================================================================================ 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.