!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_AdamsFoilesWolfer_1989Universal6_Pt__MO_388062184209_000 Supported species : Pt random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Pt (Configuration in file "config-F-Pt.xyz") ----------------------------------------------------------------------------------------------------- Energy = 181.5488395775066 Forces: 1 -1.85264477e+01 -3.75159055e+01 -4.21519631e+01 2 -1.23896513e+01 2.06758336e+01 -3.36121155e+01 3 1.68885900e+01 -3.25475308e+01 -2.91712968e-01 4 -2.84548486e+01 3.28703401e+01 2.05854385e+01 5 2.24107112e+01 -4.32347221e+01 -8.76833186e+00 6 1.38959732e+01 -6.67668111e+00 -1.94557915e+01 7 2.26704476e+01 -7.04367881e+01 -6.47257308e+01 8 -4.56118625e+01 -4.33193086e+01 -4.60477742e+00 9 -3.04103005e+01 -1.27516698e+01 -4.68988023e+01 10 -1.15488189e+01 5.41349759e+01 -5.33718984e+01 11 -2.46919762e+01 -3.50631137e+01 2.35236795e+01 12 -3.06593307e+01 3.17133813e+01 1.31772661e+01 13 -4.02448563e+00 -1.66014160e+01 -1.05600629e+02 14 1.82931223e+01 1.92528458e+01 -1.28386512e+01 15 1.04841410e+02 1.43309552e+01 1.81012101e+01 16 1.84373965e+01 8.09801111e+01 2.90038182e+01 17 -4.55956663e+01 -2.38603737e+01 1.20688486e+00 18 1.86188961e+01 2.03855352e+01 -3.27658612e+00 19 1.44268918e+01 -2.34940835e+01 2.80336974e+01 20 -1.75658811e+01 5.86520384e+00 2.01237530e+01 21 -3.07422707e+01 -3.04705621e+01 1.66937964e+01 22 5.85915371e+01 4.02421996e+01 5.18830762e+01 23 1.33230452e+01 -7.13202768e+00 2.26858902e+01 24 -1.18023616e+00 -1.21246051e+01 1.86935815e+01 25 -3.70359458e+01 -1.00455625e+01 -7.26932288e+00 26 -1.62228440e+01 5.61528462e+01 -1.81967129e+01 27 1.80884383e+01 -6.01891401e+01 4.07159778e+01 28 -6.12003605e+01 5.27700640e+01 1.93909596e+01 29 -1.34509214e+01 -1.92584185e+01 2.38756430e+01 30 2.47123479e+01 3.15523396e+01 -3.56008256e+00 31 4.24186281e+01 -1.58245587e+01 3.41563825e+01 32 2.16944123e+01 3.96198362e+01 4.27720540e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Pt (Configuration in file "config-T-Pt.xyz") ----------------------------------------------------------------------------------------------------- Energy = 181.5488395775066 Forces: 1 -1.85264477e+01 -3.75159055e+01 -4.21519631e+01 2 -1.23896513e+01 2.06758336e+01 -3.36121155e+01 3 1.68885900e+01 -3.25475308e+01 -2.91712968e-01 4 -2.84548486e+01 3.28703401e+01 2.05854385e+01 5 2.24107112e+01 -4.32347221e+01 -8.76833186e+00 6 1.38959732e+01 -6.67668111e+00 -1.94557915e+01 7 2.26704476e+01 -7.04367881e+01 -6.47257308e+01 8 -4.56118625e+01 -4.33193086e+01 -4.60477742e+00 9 -3.04103005e+01 -1.27516698e+01 -4.68988023e+01 10 -1.15488189e+01 5.41349759e+01 -5.33718984e+01 11 -2.46919762e+01 -3.50631137e+01 2.35236795e+01 12 -3.06593307e+01 3.17133813e+01 1.31772661e+01 13 -4.02448563e+00 -1.66014160e+01 -1.05600629e+02 14 1.82931223e+01 1.92528458e+01 -1.28386512e+01 15 1.04841410e+02 1.43309552e+01 1.81012101e+01 16 1.84373965e+01 8.09801111e+01 2.90038182e+01 17 -4.55956663e+01 -2.38603737e+01 1.20688486e+00 18 1.86188961e+01 2.03855352e+01 -3.27658612e+00 19 1.44268918e+01 -2.34940835e+01 2.80336974e+01 20 -1.75658811e+01 5.86520384e+00 2.01237530e+01 21 -3.07422707e+01 -3.04705621e+01 1.66937964e+01 22 5.85915371e+01 4.02421996e+01 5.18830762e+01 23 1.33230452e+01 -7.13202768e+00 2.26858902e+01 24 -1.18023616e+00 -1.21246051e+01 1.86935815e+01 25 -3.70359458e+01 -1.00455625e+01 -7.26932288e+00 26 -1.62228440e+01 5.61528462e+01 -1.81967129e+01 27 1.80884383e+01 -6.01891401e+01 4.07159778e+01 28 -6.12003605e+01 5.27700640e+01 1.93909596e+01 29 -1.34509214e+01 -1.92584185e+01 2.38756430e+01 30 2.47123479e+01 3.15523396e+01 -3.56008256e+00 31 4.24186281e+01 -1.58245587e+01 3.41563825e+01 32 2.16944123e+01 3.96198362e+01 4.27720540e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==85259== Memcheck, a memory error detector ==85259== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==85259== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==85259== Command: python runner2.py EAM_Dynamo_AdamsFoilesWolfer_1989Universal6_Pt__MO_388062184209_000 ==85259== ==85259== Conditional jump or move depends on uninitialised value(s) ==85259== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==85259== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85259== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85259== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85259== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85259== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85259== by 0x551B80: ??? (in /usr/bin/python3.6) ==85259== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85259== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85259== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85259== by 0x509D47: ??? (in /usr/bin/python3.6) ==85259== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85259== ==85259== Conditional jump or move depends on uninitialised value(s) ==85259== at 0x4E63408: internal_utf8_loop (loop.c:298) ==85259== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==85259== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85259== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85259== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85259== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85259== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85259== by 0x551B80: ??? (in /usr/bin/python3.6) ==85259== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85259== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85259== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85259== by 0x509D47: ??? (in /usr/bin/python3.6) ==85259== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85259== ==85259== Conditional jump or move depends on uninitialised value(s) ==85259== at 0x4E63411: internal_utf8_loop (loop.c:303) ==85259== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==85259== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85259== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85259== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85259== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85259== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85259== by 0x551B80: ??? (in /usr/bin/python3.6) ==85259== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85259== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85259== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85259== by 0x509D47: ??? (in /usr/bin/python3.6) ==85259== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85259== ==85259== Conditional jump or move depends on uninitialised value(s) ==85259== at 0x4E63458: internal_utf8_loop (loop.c:298) ==85259== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==85259== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85259== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85259== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85259== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85259== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85259== by 0x551B80: ??? (in /usr/bin/python3.6) ==85259== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85259== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85259== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85259== by 0x509D47: ??? (in /usr/bin/python3.6) ==85259== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85259== ==85259== Conditional jump or move depends on uninitialised value(s) ==85259== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==85259== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85259== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85259== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85259== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==85259== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==85259== by 0x4F8388: ??? (in /usr/bin/python3.6) ==85259== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==85259== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==85259== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==85259== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==85259== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85259== ==85259== ==85259== HEAP SUMMARY: ==85259== in use at exit: 2,764,995 bytes in 1,647 blocks ==85259== total heap usage: 36,176 allocs, 34,529 frees, 62,518,800 bytes allocated ==85259== ==85259== LEAK SUMMARY: ==85259== definitely lost: 0 bytes in 0 blocks ==85259== indirectly lost: 0 bytes in 0 blocks ==85259== possibly lost: 146,155 bytes in 87 blocks ==85259== still reachable: 2,618,840 bytes in 1,560 blocks ==85259== suppressed: 0 bytes in 0 blocks ==85259== Rerun with --leak-check=full to see details of leaked memory ==85259== ==85259== For counts of detected and suppressed errors, rerun with: -v ==85259== Use --track-origins=yes to see where uninitialised values come from ==85259== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12384 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.