!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_FoilesBaskesDaw_1986Universal3_Pt__MO_757342646688_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 = 179.7390384781281 Forces: 1 -1.85073761e+01 -3.79699290e+01 -4.25800614e+01 2 -1.27831612e+01 2.11669576e+01 -3.36570078e+01 3 1.69343068e+01 -3.25624349e+01 -3.84070489e-01 4 -2.83839393e+01 3.33356329e+01 2.09136841e+01 5 2.27477428e+01 -4.37052337e+01 -8.60381428e+00 6 1.38043604e+01 -6.64621692e+00 -1.93125666e+01 7 2.26623212e+01 -7.08714365e+01 -6.54215279e+01 8 -4.58114384e+01 -4.35638502e+01 -4.77322438e+00 9 -3.04661300e+01 -1.29462499e+01 -4.71525153e+01 10 -1.17058130e+01 5.42494279e+01 -5.36316329e+01 11 -2.46993895e+01 -3.51544845e+01 2.36956065e+01 12 -3.06628833e+01 3.18480317e+01 1.33357500e+01 13 -4.19025090e+00 -1.67569841e+01 -1.06072630e+02 14 1.82402396e+01 1.92115245e+01 -1.27778944e+01 15 1.05339947e+02 1.45456149e+01 1.83287960e+01 16 1.87161450e+01 8.11328129e+01 2.92934346e+01 17 -4.58629278e+01 -2.39179413e+01 1.20666909e+00 18 1.86451027e+01 2.05003981e+01 -3.25149091e+00 19 1.45369611e+01 -2.34990853e+01 2.81547570e+01 20 -1.75149597e+01 5.83953987e+00 2.00798224e+01 21 -3.09542546e+01 -3.04840637e+01 1.67642521e+01 22 5.87202338e+01 4.06451860e+01 5.23554067e+01 23 1.34249555e+01 -7.07430745e+00 2.27837402e+01 24 -1.15411419e+00 -1.21214942e+01 1.86631588e+01 25 -3.70703125e+01 -1.00421911e+01 -7.22104889e+00 26 -1.63789019e+01 5.62599809e+01 -1.82718143e+01 27 1.84231104e+01 -6.07827754e+01 4.07308955e+01 28 -6.16388881e+01 5.32076118e+01 1.93423733e+01 29 -1.34898123e+01 -1.91754062e+01 2.39281162e+01 30 2.46627601e+01 3.16176581e+01 -3.68872517e+00 31 4.25716499e+01 -1.59951497e+01 3.43561535e+01 32 2.18447160e+01 3.97088568e+01 4.28674095e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Pt (Configuration in file "config-T-Pt.xyz") ----------------------------------------------------------------------------------------------------- Energy = 179.7390384781281 Forces: 1 -1.85073761e+01 -3.79699290e+01 -4.25800614e+01 2 -1.27831612e+01 2.11669576e+01 -3.36570078e+01 3 1.69343068e+01 -3.25624349e+01 -3.84070489e-01 4 -2.83839393e+01 3.33356329e+01 2.09136841e+01 5 2.27477428e+01 -4.37052337e+01 -8.60381428e+00 6 1.38043604e+01 -6.64621692e+00 -1.93125666e+01 7 2.26623212e+01 -7.08714365e+01 -6.54215279e+01 8 -4.58114384e+01 -4.35638502e+01 -4.77322438e+00 9 -3.04661300e+01 -1.29462499e+01 -4.71525153e+01 10 -1.17058130e+01 5.42494279e+01 -5.36316329e+01 11 -2.46993895e+01 -3.51544845e+01 2.36956065e+01 12 -3.06628833e+01 3.18480317e+01 1.33357500e+01 13 -4.19025090e+00 -1.67569841e+01 -1.06072630e+02 14 1.82402396e+01 1.92115245e+01 -1.27778944e+01 15 1.05339947e+02 1.45456149e+01 1.83287960e+01 16 1.87161450e+01 8.11328129e+01 2.92934346e+01 17 -4.58629278e+01 -2.39179413e+01 1.20666909e+00 18 1.86451027e+01 2.05003981e+01 -3.25149091e+00 19 1.45369611e+01 -2.34990853e+01 2.81547570e+01 20 -1.75149597e+01 5.83953987e+00 2.00798224e+01 21 -3.09542546e+01 -3.04840637e+01 1.67642521e+01 22 5.87202338e+01 4.06451860e+01 5.23554067e+01 23 1.34249555e+01 -7.07430745e+00 2.27837402e+01 24 -1.15411419e+00 -1.21214942e+01 1.86631588e+01 25 -3.70703125e+01 -1.00421911e+01 -7.22104889e+00 26 -1.63789019e+01 5.62599809e+01 -1.82718143e+01 27 1.84231104e+01 -6.07827754e+01 4.07308955e+01 28 -6.16388881e+01 5.32076118e+01 1.93423733e+01 29 -1.34898123e+01 -1.91754062e+01 2.39281162e+01 30 2.46627601e+01 3.16176581e+01 -3.68872517e+00 31 4.25716499e+01 -1.59951497e+01 3.43561535e+01 32 2.18447160e+01 3.97088568e+01 4.28674095e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==86708== Memcheck, a memory error detector ==86708== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==86708== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==86708== Command: python runner2.py EAM_Dynamo_FoilesBaskesDaw_1986Universal3_Pt__MO_757342646688_000 ==86708== ==86708== Conditional jump or move depends on uninitialised value(s) ==86708== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==86708== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==86708== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86708== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86708== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86708== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86708== by 0x551B80: ??? (in /usr/bin/python3.6) ==86708== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86708== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86708== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86708== by 0x509D47: ??? (in /usr/bin/python3.6) ==86708== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86708== ==86708== Conditional jump or move depends on uninitialised value(s) ==86708== at 0x4E63408: internal_utf8_loop (loop.c:298) ==86708== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==86708== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86708== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86708== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86708== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86708== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86708== by 0x551B80: ??? (in /usr/bin/python3.6) ==86708== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86708== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86708== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86708== by 0x509D47: ??? (in /usr/bin/python3.6) ==86708== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86708== ==86708== Conditional jump or move depends on uninitialised value(s) ==86708== at 0x4E63411: internal_utf8_loop (loop.c:303) ==86708== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==86708== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86708== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86708== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86708== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86708== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86708== by 0x551B80: ??? (in /usr/bin/python3.6) ==86708== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86708== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86708== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86708== by 0x509D47: ??? (in /usr/bin/python3.6) ==86708== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86708== ==86708== Conditional jump or move depends on uninitialised value(s) ==86708== at 0x4E63458: internal_utf8_loop (loop.c:298) ==86708== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==86708== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==86708== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86708== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86708== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==86708== by 0x5BA640: ??? (in /usr/bin/python3.6) ==86708== by 0x551B80: ??? (in /usr/bin/python3.6) ==86708== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==86708== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==86708== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86708== by 0x509D47: ??? (in /usr/bin/python3.6) ==86708== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==86708== ==86708== Conditional jump or move depends on uninitialised value(s) ==86708== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==86708== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==86708== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==86708== by 0x547A3F: ??? (in /usr/bin/python3.6) ==86708== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==86708== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==86708== by 0x4F8388: ??? (in /usr/bin/python3.6) ==86708== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==86708== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==86708== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==86708== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==86708== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==86708== ==86708== ==86708== HEAP SUMMARY: ==86708== in use at exit: 2,764,995 bytes in 1,647 blocks ==86708== total heap usage: 36,176 allocs, 34,529 frees, 62,518,244 bytes allocated ==86708== ==86708== LEAK SUMMARY: ==86708== definitely lost: 0 bytes in 0 blocks ==86708== indirectly lost: 0 bytes in 0 blocks ==86708== possibly lost: 146,155 bytes in 87 blocks ==86708== still reachable: 2,618,840 bytes in 1,560 blocks ==86708== suppressed: 0 bytes in 0 blocks ==86708== Rerun with --leak-check=full to see details of leaked memory ==86708== ==86708== For counts of detected and suppressed errors, rerun with: -v ==86708== Use --track-origins=yes to see where uninitialised values come from ==86708== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12383 from 659) ================================================================================ 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.