!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_Marinica_2011_Fe__MO_255315407910_000 Supported species : Fe random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Fe (Configuration in file "config-F-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 46.98079765962386 Forces: 1 -1.32198308e+01 -1.19166016e+01 -2.41677484e+01 2 -1.16922436e+01 1.68660946e+01 -5.49075919e+00 3 2.62498219e+01 -2.17807666e+01 -5.23728869e+00 4 -1.29317880e+01 1.96902906e+01 8.49246785e+00 5 3.10645818e+00 -2.68132724e+01 1.35398342e+00 6 1.32443846e+01 1.34260754e+01 -1.18378433e+01 7 7.97309159e+00 -5.37896481e+01 -4.81250721e+01 8 -3.11945011e+01 -1.92974477e+01 -8.99904311e+00 9 -1.92685928e+01 -1.47037505e+01 -2.91816228e+01 10 -1.08899037e+01 3.38839064e+01 -3.41704008e+01 11 -6.53038754e+00 -2.65740569e+01 2.87046757e+01 12 -1.04874714e+01 1.91329534e+01 7.30267606e+00 13 -1.26132525e+01 -2.80563699e+01 -7.13141533e+01 14 1.06939726e+01 1.62056587e+01 -8.80459070e+00 15 6.45639975e+01 -1.38997388e+01 1.75296384e+01 16 1.07739102e+01 4.89847509e+01 2.85063796e+01 17 -2.61749942e+01 -6.06373015e+00 1.15652235e+00 18 1.17784247e+01 1.57154939e+01 1.97286192e+00 19 2.00718628e+01 -1.87363218e+01 1.05988325e+01 20 -1.22726931e+01 1.80546645e+01 1.02692226e+01 21 -3.35276431e+01 -1.32542211e+01 4.75550961e+00 22 3.29915648e+01 4.37533541e+01 4.23533273e+01 23 1.22801942e+01 -1.34840954e-02 1.82564154e+01 24 -2.21801138e+00 -4.84392358e+00 1.64041919e+00 25 -1.29900274e+01 -1.38885213e+01 2.59275141e+00 26 -1.31242706e+01 2.97931323e+01 -1.75291762e+01 27 2.30360038e+01 -5.96374970e+01 1.32184689e+01 28 -4.48254299e+01 4.06829347e+01 7.52628696e+00 29 -1.67097990e+01 -1.41980308e+01 1.30069897e+01 30 9.07666754e+00 1.99852184e+01 8.15750641e+00 31 2.90233810e+01 -1.17886776e+01 1.46982741e+01 32 1.58071046e+01 2.30815319e+01 2.27644892e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Fe (Configuration in file "config-T-Fe.xyz") ----------------------------------------------------------------------------------------------------- Energy = 46.98079765962386 Forces: 1 -1.32198308e+01 -1.19166016e+01 -2.41677484e+01 2 -1.16922436e+01 1.68660946e+01 -5.49075919e+00 3 2.62498219e+01 -2.17807666e+01 -5.23728869e+00 4 -1.29317880e+01 1.96902906e+01 8.49246785e+00 5 3.10645818e+00 -2.68132724e+01 1.35398342e+00 6 1.32443846e+01 1.34260754e+01 -1.18378433e+01 7 7.97309159e+00 -5.37896481e+01 -4.81250721e+01 8 -3.11945011e+01 -1.92974477e+01 -8.99904311e+00 9 -1.92685928e+01 -1.47037505e+01 -2.91816228e+01 10 -1.08899037e+01 3.38839064e+01 -3.41704008e+01 11 -6.53038754e+00 -2.65740569e+01 2.87046757e+01 12 -1.04874714e+01 1.91329534e+01 7.30267606e+00 13 -1.26132525e+01 -2.80563699e+01 -7.13141533e+01 14 1.06939726e+01 1.62056587e+01 -8.80459070e+00 15 6.45639975e+01 -1.38997388e+01 1.75296384e+01 16 1.07739102e+01 4.89847509e+01 2.85063796e+01 17 -2.61749942e+01 -6.06373015e+00 1.15652235e+00 18 1.17784247e+01 1.57154939e+01 1.97286192e+00 19 2.00718628e+01 -1.87363218e+01 1.05988325e+01 20 -1.22726931e+01 1.80546645e+01 1.02692226e+01 21 -3.35276431e+01 -1.32542211e+01 4.75550961e+00 22 3.29915648e+01 4.37533541e+01 4.23533273e+01 23 1.22801942e+01 -1.34840954e-02 1.82564154e+01 24 -2.21801138e+00 -4.84392358e+00 1.64041919e+00 25 -1.29900274e+01 -1.38885213e+01 2.59275141e+00 26 -1.31242706e+01 2.97931323e+01 -1.75291762e+01 27 2.30360038e+01 -5.96374970e+01 1.32184689e+01 28 -4.48254299e+01 4.06829347e+01 7.52628696e+00 29 -1.67097990e+01 -1.41980308e+01 1.30069897e+01 30 9.07666754e+00 1.99852184e+01 8.15750641e+00 31 2.90233810e+01 -1.17886776e+01 1.46982741e+01 32 1.58071046e+01 2.30815319e+01 2.27644892e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==88129== Memcheck, a memory error detector ==88129== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==88129== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==88129== Command: python runner2.py EAM_Dynamo_Marinica_2011_Fe__MO_255315407910_000 ==88129== ==88129== Conditional jump or move depends on uninitialised value(s) ==88129== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==88129== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==88129== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88129== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88129== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88129== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88129== by 0x551B80: ??? (in /usr/bin/python3.6) ==88129== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88129== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88129== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88129== by 0x509D47: ??? (in /usr/bin/python3.6) ==88129== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88129== ==88129== Conditional jump or move depends on uninitialised value(s) ==88129== at 0x4E63408: internal_utf8_loop (loop.c:298) ==88129== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==88129== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88129== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88129== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88129== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88129== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88129== by 0x551B80: ??? (in /usr/bin/python3.6) ==88129== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88129== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88129== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88129== by 0x509D47: ??? (in /usr/bin/python3.6) ==88129== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88129== ==88129== Conditional jump or move depends on uninitialised value(s) ==88129== at 0x4E63411: internal_utf8_loop (loop.c:303) ==88129== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==88129== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88129== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88129== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88129== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88129== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88129== by 0x551B80: ??? (in /usr/bin/python3.6) ==88129== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88129== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88129== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88129== by 0x509D47: ??? (in /usr/bin/python3.6) ==88129== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88129== ==88129== Conditional jump or move depends on uninitialised value(s) ==88129== at 0x4E63458: internal_utf8_loop (loop.c:298) ==88129== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==88129== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==88129== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88129== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88129== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==88129== by 0x5BA640: ??? (in /usr/bin/python3.6) ==88129== by 0x551B80: ??? (in /usr/bin/python3.6) ==88129== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88129== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88129== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88129== by 0x509D47: ??? (in /usr/bin/python3.6) ==88129== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88129== ==88129== Conditional jump or move depends on uninitialised value(s) ==88129== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==88129== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==88129== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==88129== by 0x547A3F: ??? (in /usr/bin/python3.6) ==88129== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==88129== by 0x4CAD31: ??? (in /usr/bin/python3.6) ==88129== by 0x551B80: ??? (in /usr/bin/python3.6) ==88129== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==88129== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==88129== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==88129== by 0x509D47: ??? (in /usr/bin/python3.6) ==88129== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==88129== ==88129== ==88129== HEAP SUMMARY: ==88129== in use at exit: 2,764,995 bytes in 1,647 blocks ==88129== total heap usage: 36,172 allocs, 34,525 frees, 177,106,945 bytes allocated ==88129== ==88129== LEAK SUMMARY: ==88129== definitely lost: 0 bytes in 0 blocks ==88129== indirectly lost: 0 bytes in 0 blocks ==88129== possibly lost: 146,155 bytes in 87 blocks ==88129== still reachable: 2,618,840 bytes in 1,560 blocks ==88129== suppressed: 0 bytes in 0 blocks ==88129== Rerun with --leak-check=full to see details of leaked memory ==88129== ==88129== For counts of detected and suppressed errors, rerun with: -v ==88129== Use --track-origins=yes to see where uninitialised values come from ==88129== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 11546 from 639) ================================================================================ 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.