!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_LiuErcolessiAdams_2004_Al__MO_051157671505_000 Supported species : Al random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Al (Configuration in file "config-F-Al.xyz") ----------------------------------------------------------------------------------------------------- Energy = -63.934435140016745 Forces: 1 -9.88224412e-01 -1.38908316e+00 -2.06436834e+00 2 -1.24015020e+00 2.58578262e+00 -1.29222351e+00 3 2.01114962e+00 -1.33086101e+00 2.10652370e+00 4 -5.90749127e-01 2.28450693e+00 1.74227110e+00 5 1.28556683e+00 -2.13277091e+00 1.36060602e-01 6 6.12028635e-01 1.54298897e+00 -1.35550455e+00 7 1.34393328e+00 -6.39406507e+00 -5.02469211e+00 8 -4.02288832e+00 -2.42112666e+00 -6.16780842e-01 9 -2.15299220e+00 -1.98694080e+00 -3.12475679e+00 10 -1.07508030e+00 3.77544015e+00 -4.01690633e+00 11 -1.06724148e+00 -3.37278290e+00 4.51322134e+00 12 -7.80916225e-01 1.56997804e+00 1.56190204e+00 13 -1.28368678e+00 -3.22521526e+00 -7.92553832e+00 14 6.13425894e-01 1.13205370e+00 -3.13761182e-01 15 7.10878590e+00 -1.24752639e+00 1.84266151e+00 16 1.75774433e+00 5.49103372e+00 3.14699880e+00 17 -1.51767038e+00 -9.04332730e-01 -1.91028443e+00 18 4.53328954e-01 2.87554971e+00 -3.56325479e+00 19 1.80210270e+00 -2.78990049e+00 2.28724090e+00 20 -9.91457075e-01 1.99386409e+00 1.30688062e+00 21 -3.54442896e+00 -1.04608811e+00 1.04149812e+00 22 2.70088556e+00 5.19173781e+00 4.90925694e+00 23 4.52602934e-01 3.60399578e-01 7.64478579e-01 24 8.14096610e-01 -5.90619434e-01 1.16260409e+00 25 -1.96397002e+00 -2.79987474e+00 -2.06696262e+00 26 -1.30191190e+00 3.53709403e+00 -2.68095627e+00 27 2.90937718e+00 -6.88060764e+00 2.82200464e+00 28 -4.83375108e+00 4.98029867e+00 1.22008384e+00 29 -1.93268679e+00 -1.67577367e+00 1.04954058e+00 30 5.34013806e-01 2.04755201e+00 3.88101215e-01 31 3.14226373e+00 -1.78215777e+00 1.71787207e+00 32 1.74649928e+00 2.60144671e+00 2.23678939e+00 MONOATOMIC STRUCTURE (pbc=True)-- Species = Al (Configuration in file "config-T-Al.xyz") ----------------------------------------------------------------------------------------------------- Energy = -63.934435140016745 Forces: 1 -9.88224412e-01 -1.38908316e+00 -2.06436834e+00 2 -1.24015020e+00 2.58578262e+00 -1.29222351e+00 3 2.01114962e+00 -1.33086101e+00 2.10652370e+00 4 -5.90749127e-01 2.28450693e+00 1.74227110e+00 5 1.28556683e+00 -2.13277091e+00 1.36060602e-01 6 6.12028635e-01 1.54298897e+00 -1.35550455e+00 7 1.34393328e+00 -6.39406507e+00 -5.02469211e+00 8 -4.02288832e+00 -2.42112666e+00 -6.16780842e-01 9 -2.15299220e+00 -1.98694080e+00 -3.12475679e+00 10 -1.07508030e+00 3.77544015e+00 -4.01690633e+00 11 -1.06724148e+00 -3.37278290e+00 4.51322134e+00 12 -7.80916225e-01 1.56997804e+00 1.56190204e+00 13 -1.28368678e+00 -3.22521526e+00 -7.92553832e+00 14 6.13425894e-01 1.13205370e+00 -3.13761182e-01 15 7.10878590e+00 -1.24752639e+00 1.84266151e+00 16 1.75774433e+00 5.49103372e+00 3.14699880e+00 17 -1.51767038e+00 -9.04332730e-01 -1.91028443e+00 18 4.53328954e-01 2.87554971e+00 -3.56325479e+00 19 1.80210270e+00 -2.78990049e+00 2.28724090e+00 20 -9.91457075e-01 1.99386409e+00 1.30688062e+00 21 -3.54442896e+00 -1.04608811e+00 1.04149812e+00 22 2.70088556e+00 5.19173781e+00 4.90925694e+00 23 4.52602934e-01 3.60399578e-01 7.64478579e-01 24 8.14096610e-01 -5.90619434e-01 1.16260409e+00 25 -1.96397002e+00 -2.79987474e+00 -2.06696262e+00 26 -1.30191190e+00 3.53709403e+00 -2.68095627e+00 27 2.90937718e+00 -6.88060764e+00 2.82200464e+00 28 -4.83375108e+00 4.98029867e+00 1.22008384e+00 29 -1.93268679e+00 -1.67577367e+00 1.04954058e+00 30 5.34013806e-01 2.04755201e+00 3.88101215e-01 31 3.14226373e+00 -1.78215777e+00 1.71787207e+00 32 1.74649928e+00 2.60144671e+00 2.23678939e+00 ================================================================================ VALGRIND OUTPUT ================================================================================ ==87660== Memcheck, a memory error detector ==87660== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==87660== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==87660== Command: python runner2.py EAM_Dynamo_LiuErcolessiAdams_2004_Al__MO_051157671505_000 ==87660== ==87660== Conditional jump or move depends on uninitialised value(s) ==87660== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==87660== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==87660== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==87660== by 0x547A3F: ??? (in /usr/bin/python3.6) ==87660== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==87660== by 0x5BA640: ??? (in /usr/bin/python3.6) ==87660== by 0x551B80: ??? (in /usr/bin/python3.6) ==87660== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==87660== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==87660== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==87660== by 0x509D47: ??? (in /usr/bin/python3.6) ==87660== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==87660== ==87660== Conditional jump or move depends on uninitialised value(s) ==87660== at 0x4E63408: internal_utf8_loop (loop.c:298) ==87660== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==87660== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==87660== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==87660== by 0x547A3F: ??? (in /usr/bin/python3.6) ==87660== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==87660== by 0x5BA640: ??? (in /usr/bin/python3.6) ==87660== by 0x551B80: ??? (in /usr/bin/python3.6) ==87660== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==87660== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==87660== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==87660== by 0x509D47: ??? (in /usr/bin/python3.6) ==87660== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==87660== ==87660== Conditional jump or move depends on uninitialised value(s) ==87660== at 0x4E63411: internal_utf8_loop (loop.c:303) ==87660== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==87660== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==87660== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==87660== by 0x547A3F: ??? (in /usr/bin/python3.6) ==87660== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==87660== by 0x5BA640: ??? (in /usr/bin/python3.6) ==87660== by 0x551B80: ??? (in /usr/bin/python3.6) ==87660== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==87660== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==87660== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==87660== by 0x509D47: ??? (in /usr/bin/python3.6) ==87660== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==87660== ==87660== Conditional jump or move depends on uninitialised value(s) ==87660== at 0x4E63458: internal_utf8_loop (loop.c:298) ==87660== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==87660== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==87660== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==87660== by 0x547A3F: ??? (in /usr/bin/python3.6) ==87660== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==87660== by 0x5BA640: ??? (in /usr/bin/python3.6) ==87660== by 0x551B80: ??? (in /usr/bin/python3.6) ==87660== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==87660== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==87660== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==87660== by 0x509D47: ??? (in /usr/bin/python3.6) ==87660== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==87660== ==87660== Conditional jump or move depends on uninitialised value(s) ==87660== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==87660== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==87660== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==87660== by 0x547A3F: ??? (in /usr/bin/python3.6) ==87660== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==87660== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==87660== by 0x4F8388: ??? (in /usr/bin/python3.6) ==87660== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==87660== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==87660== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==87660== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==87660== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==87660== ==87660== ==87660== HEAP SUMMARY: ==87660== in use at exit: 2,764,995 bytes in 1,647 blocks ==87660== total heap usage: 39,136 allocs, 37,489 frees, 69,284,456 bytes allocated ==87660== ==87660== LEAK SUMMARY: ==87660== definitely lost: 0 bytes in 0 blocks ==87660== indirectly lost: 0 bytes in 0 blocks ==87660== possibly lost: 146,155 bytes in 87 blocks ==87660== still reachable: 2,618,840 bytes in 1,560 blocks ==87660== suppressed: 0 bytes in 0 blocks ==87660== Rerun with --leak-check=full to see details of leaked memory ==87660== ==87660== For counts of detected and suppressed errors, rerun with: -v ==87660== Use --track-origins=yes to see where uninitialised values come from ==87660== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12361 from 652) ================================================================================ 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.