!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_1989_Au__MO_087738844640_000 Supported species : Au random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Au (Configuration in file "config-F-Au.xyz") ----------------------------------------------------------------------------------------------------- Energy = 215.56640095394025 Forces: 1 -1.64059628e+01 -3.20411706e+01 -3.61293680e+01 2 -1.06048140e+01 1.76015534e+01 -2.92142174e+01 3 1.39305495e+01 -2.83121077e+01 -2.91331180e-01 4 -2.45921126e+01 2.85677242e+01 1.77825170e+01 5 1.92264209e+01 -3.75777531e+01 -8.05217609e+00 6 1.29940622e+01 -6.04883643e+00 -1.79033905e+01 7 1.88586720e+01 -5.85564734e+01 -5.22613371e+01 8 -3.67297375e+01 -3.48419257e+01 -3.47941281e+00 9 -2.58072185e+01 -1.02041240e+01 -3.91184268e+01 10 -9.28186833e+00 4.50550838e+01 -4.41262458e+01 11 -2.27865426e+01 -2.72927772e+01 2.23525549e+01 12 -2.54872605e+01 2.40827304e+01 1.38905397e+01 13 -3.90421984e+00 -1.33115482e+01 -8.56006584e+01 14 1.65929025e+01 1.74668740e+01 -1.22130711e+01 15 8.49525647e+01 9.37081507e+00 1.25550632e+01 16 1.33746623e+01 6.56457679e+01 2.29728141e+01 17 -3.97507738e+01 -2.11254883e+01 3.01515200e-01 18 1.51354342e+01 1.72047503e+01 -5.68401241e+00 19 1.09640163e+01 -2.41376311e+01 2.44160876e+01 20 -1.73116759e+01 3.71504759e+00 2.00663574e+01 21 -1.99746999e+01 -2.54986823e+01 1.79760309e+01 22 4.78248162e+01 3.18234429e+01 4.46897994e+01 23 7.12842235e+00 -4.75556387e+00 1.07685438e+01 24 4.98370408e+00 -1.35089054e+00 1.58173209e+01 25 -3.85223071e+01 -1.35854054e+01 -3.00674895e+01 26 -1.08083287e+01 4.72782233e+01 -1.72004337e+01 27 2.80331629e+01 -5.10840051e+01 4.48422115e+01 28 -5.36812453e+01 5.29552961e+01 2.46747135e+01 29 -1.22462028e+01 -1.60226393e+01 2.23671909e+01 30 2.22362301e+01 2.68439166e+01 1.56295654e+00 31 3.25955801e+01 -1.32013997e+01 2.87524587e+01 32 1.90637701e+01 3.13371965e+01 3.55528958e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Au (Configuration in file "config-T-Au.xyz") ----------------------------------------------------------------------------------------------------- Energy = 215.56640095394025 Forces: 1 -1.64059628e+01 -3.20411706e+01 -3.61293680e+01 2 -1.06048140e+01 1.76015534e+01 -2.92142174e+01 3 1.39305495e+01 -2.83121077e+01 -2.91331180e-01 4 -2.45921126e+01 2.85677242e+01 1.77825170e+01 5 1.92264209e+01 -3.75777531e+01 -8.05217609e+00 6 1.29940622e+01 -6.04883643e+00 -1.79033905e+01 7 1.88586720e+01 -5.85564734e+01 -5.22613371e+01 8 -3.67297375e+01 -3.48419257e+01 -3.47941281e+00 9 -2.58072185e+01 -1.02041240e+01 -3.91184268e+01 10 -9.28186833e+00 4.50550838e+01 -4.41262458e+01 11 -2.27865426e+01 -2.72927772e+01 2.23525549e+01 12 -2.54872605e+01 2.40827304e+01 1.38905397e+01 13 -3.90421984e+00 -1.33115482e+01 -8.56006584e+01 14 1.65929025e+01 1.74668740e+01 -1.22130711e+01 15 8.49525647e+01 9.37081507e+00 1.25550632e+01 16 1.33746623e+01 6.56457679e+01 2.29728141e+01 17 -3.97507738e+01 -2.11254883e+01 3.01515200e-01 18 1.51354342e+01 1.72047503e+01 -5.68401241e+00 19 1.09640163e+01 -2.41376311e+01 2.44160876e+01 20 -1.73116759e+01 3.71504759e+00 2.00663574e+01 21 -1.99746999e+01 -2.54986823e+01 1.79760309e+01 22 4.78248162e+01 3.18234429e+01 4.46897994e+01 23 7.12842235e+00 -4.75556387e+00 1.07685438e+01 24 4.98370408e+00 -1.35089054e+00 1.58173209e+01 25 -3.85223071e+01 -1.35854054e+01 -3.00674895e+01 26 -1.08083287e+01 4.72782233e+01 -1.72004337e+01 27 2.80331629e+01 -5.10840051e+01 4.48422115e+01 28 -5.36812453e+01 5.29552961e+01 2.46747135e+01 29 -1.22462028e+01 -1.60226393e+01 2.23671909e+01 30 2.22362301e+01 2.68439166e+01 1.56295654e+00 31 3.25955801e+01 -1.32013997e+01 2.87524587e+01 32 1.90637701e+01 3.13371965e+01 3.55528958e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==85334== Memcheck, a memory error detector ==85334== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==85334== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==85334== Command: python runner2.py EAM_Dynamo_AdamsFoilesWolfer_1989_Au__MO_087738844640_000 ==85334== ==85334== Conditional jump or move depends on uninitialised value(s) ==85334== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==85334== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85334== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85334== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85334== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85334== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85334== by 0x551B80: ??? (in /usr/bin/python3.6) ==85334== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85334== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85334== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85334== by 0x509D47: ??? (in /usr/bin/python3.6) ==85334== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85334== ==85334== Conditional jump or move depends on uninitialised value(s) ==85334== at 0x4E63408: internal_utf8_loop (loop.c:298) ==85334== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==85334== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85334== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85334== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85334== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85334== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85334== by 0x551B80: ??? (in /usr/bin/python3.6) ==85334== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85334== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85334== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85334== by 0x509D47: ??? (in /usr/bin/python3.6) ==85334== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85334== ==85334== Conditional jump or move depends on uninitialised value(s) ==85334== at 0x4E63411: internal_utf8_loop (loop.c:303) ==85334== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==85334== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85334== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85334== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85334== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85334== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85334== by 0x551B80: ??? (in /usr/bin/python3.6) ==85334== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85334== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85334== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85334== by 0x509D47: ??? (in /usr/bin/python3.6) ==85334== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85334== ==85334== Conditional jump or move depends on uninitialised value(s) ==85334== at 0x4E63458: internal_utf8_loop (loop.c:298) ==85334== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==85334== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85334== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85334== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85334== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85334== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85334== by 0x551B80: ??? (in /usr/bin/python3.6) ==85334== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85334== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85334== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85334== by 0x509D47: ??? (in /usr/bin/python3.6) ==85334== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85334== ==85334== Conditional jump or move depends on uninitialised value(s) ==85334== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==85334== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85334== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85334== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85334== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==85334== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==85334== by 0x4F8388: ??? (in /usr/bin/python3.6) ==85334== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==85334== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==85334== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==85334== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==85334== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85334== ==85334== ==85334== HEAP SUMMARY: ==85334== in use at exit: 2,764,995 bytes in 1,647 blocks ==85334== total heap usage: 36,176 allocs, 34,529 frees, 62,516,314 bytes allocated ==85334== ==85334== LEAK SUMMARY: ==85334== definitely lost: 0 bytes in 0 blocks ==85334== indirectly lost: 0 bytes in 0 blocks ==85334== possibly lost: 146,155 bytes in 87 blocks ==85334== still reachable: 2,618,840 bytes in 1,560 blocks ==85334== suppressed: 0 bytes in 0 blocks ==85334== Rerun with --leak-check=full to see details of leaked memory ==85334== ==85334== For counts of detected and suppressed errors, rerun with: -v ==85334== Use --track-origins=yes to see where uninitialised values come from ==85334== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12367 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.