!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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_Ag__MO_681640899874_000 Supported species : Ag random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Ag (Configuration in file "config-F-Ag.xyz") ----------------------------------------------------------------------------------------------------- Energy = 207.29076987976953 Forces: 1 -8.81123933e+00 -1.54177137e+01 -1.65464133e+01 2 -6.60420110e+00 9.95265292e+00 -1.45836721e+01 3 7.51817108e+00 -2.38614820e+01 -9.75788315e+00 4 -1.58721022e+01 8.16336140e+00 4.61364532e+00 5 -2.27002174e+00 -2.52602054e+01 -8.25418757e+00 6 1.59856288e+01 9.52770945e+00 -1.70626322e+01 7 1.70464021e+01 -3.67134075e+01 -2.20621692e+01 8 -1.71787890e+01 -1.46170718e+01 -4.98825531e+00 9 -1.62650727e+01 -1.19233026e+01 -2.79146752e+01 10 -5.05968450e+00 3.01638358e+01 -2.99579493e+01 11 -3.37687043e+00 -2.02808863e+01 3.23232421e+00 12 -2.00553873e+01 2.89286717e+01 1.57315132e+00 13 -4.33994857e+00 -1.95787790e+01 -5.36793270e+01 14 1.50534144e+01 1.84221065e+01 -1.31686495e+01 15 4.91817231e+01 -1.27399090e+01 4.44089656e+00 16 5.72562553e+00 4.50741321e+01 1.54470218e+01 17 -2.63415673e+01 -1.43482728e+01 -6.19874330e+00 18 5.28237169e+00 1.67012480e+01 9.55178174e+00 19 1.22181446e+01 -1.82253983e+01 1.55386007e+01 20 -1.16401138e+01 1.39491856e+01 1.34389514e+01 21 -1.87186735e+01 -1.79497553e+01 1.26640237e+01 22 2.99981075e+01 2.70195717e+01 2.11300386e+01 23 7.14709685e+00 -3.58056116e+00 1.54068377e+01 24 7.91262174e+00 -9.85728109e+00 1.03714639e+01 25 -2.15760905e+01 -1.12266359e+01 2.06192364e+01 26 -9.42187811e+00 3.20215669e+01 -1.30706427e+01 27 5.56145181e-01 -3.20792336e+01 1.71676232e+01 28 -3.31211877e+01 2.61306847e+01 8.74774133e+00 29 -1.00879794e+01 -1.60684616e+01 1.15809217e+01 30 1.72847207e+01 2.50494388e+01 6.07117404e+00 31 2.66256515e+01 -1.30465337e+01 1.97300491e+01 32 1.32049825e+01 2.56707250e+01 2.59197168e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ag (Configuration in file "config-T-Ag.xyz") ----------------------------------------------------------------------------------------------------- Energy = 207.29076987976953 Forces: 1 -8.81123933e+00 -1.54177137e+01 -1.65464133e+01 2 -6.60420110e+00 9.95265292e+00 -1.45836721e+01 3 7.51817108e+00 -2.38614820e+01 -9.75788315e+00 4 -1.58721022e+01 8.16336140e+00 4.61364532e+00 5 -2.27002174e+00 -2.52602054e+01 -8.25418757e+00 6 1.59856288e+01 9.52770945e+00 -1.70626322e+01 7 1.70464021e+01 -3.67134075e+01 -2.20621692e+01 8 -1.71787890e+01 -1.46170718e+01 -4.98825531e+00 9 -1.62650727e+01 -1.19233026e+01 -2.79146752e+01 10 -5.05968450e+00 3.01638358e+01 -2.99579493e+01 11 -3.37687043e+00 -2.02808863e+01 3.23232421e+00 12 -2.00553873e+01 2.89286717e+01 1.57315132e+00 13 -4.33994857e+00 -1.95787790e+01 -5.36793270e+01 14 1.50534144e+01 1.84221065e+01 -1.31686495e+01 15 4.91817231e+01 -1.27399090e+01 4.44089656e+00 16 5.72562553e+00 4.50741321e+01 1.54470218e+01 17 -2.63415673e+01 -1.43482728e+01 -6.19874330e+00 18 5.28237169e+00 1.67012480e+01 9.55178174e+00 19 1.22181446e+01 -1.82253983e+01 1.55386007e+01 20 -1.16401138e+01 1.39491856e+01 1.34389514e+01 21 -1.87186735e+01 -1.79497553e+01 1.26640237e+01 22 2.99981075e+01 2.70195717e+01 2.11300386e+01 23 7.14709685e+00 -3.58056116e+00 1.54068377e+01 24 7.91262174e+00 -9.85728109e+00 1.03714639e+01 25 -2.15760905e+01 -1.12266359e+01 2.06192364e+01 26 -9.42187811e+00 3.20215669e+01 -1.30706427e+01 27 5.56145181e-01 -3.20792336e+01 1.71676232e+01 28 -3.31211877e+01 2.61306847e+01 8.74774133e+00 29 -1.00879794e+01 -1.60684616e+01 1.15809217e+01 30 1.72847207e+01 2.50494388e+01 6.07117404e+00 31 2.66256515e+01 -1.30465337e+01 1.97300491e+01 32 1.32049825e+01 2.56707250e+01 2.59197168e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==85003== Memcheck, a memory error detector ==85003== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==85003== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==85003== Command: python runner2.py EAM_Dynamo_AdamsFoilesWolfer_1989Universal6_Ag__MO_681640899874_000 ==85003== ==85003== Conditional jump or move depends on uninitialised value(s) ==85003== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==85003== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85003== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85003== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85003== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85003== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85003== by 0x551B80: ??? (in /usr/bin/python3.6) ==85003== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85003== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85003== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85003== by 0x509D47: ??? (in /usr/bin/python3.6) ==85003== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85003== ==85003== Conditional jump or move depends on uninitialised value(s) ==85003== at 0x4E63408: internal_utf8_loop (loop.c:298) ==85003== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==85003== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85003== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85003== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85003== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85003== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85003== by 0x551B80: ??? (in /usr/bin/python3.6) ==85003== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85003== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85003== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85003== by 0x509D47: ??? (in /usr/bin/python3.6) ==85003== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85003== ==85003== Conditional jump or move depends on uninitialised value(s) ==85003== at 0x4E63411: internal_utf8_loop (loop.c:303) ==85003== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==85003== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85003== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85003== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85003== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85003== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85003== by 0x551B80: ??? (in /usr/bin/python3.6) ==85003== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85003== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85003== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85003== by 0x509D47: ??? (in /usr/bin/python3.6) ==85003== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85003== ==85003== Conditional jump or move depends on uninitialised value(s) ==85003== at 0x4E63458: internal_utf8_loop (loop.c:298) ==85003== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==85003== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==85003== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85003== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85003== by 0x63345D: _Py_stat (in /usr/bin/python3.6) ==85003== by 0x5BA640: ??? (in /usr/bin/python3.6) ==85003== by 0x551B80: ??? (in /usr/bin/python3.6) ==85003== by 0x5AA6EB: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==85003== by 0x50ABB2: ??? (in /usr/bin/python3.6) ==85003== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85003== by 0x509D47: ??? (in /usr/bin/python3.6) ==85003== by 0x50AA7C: ??? (in /usr/bin/python3.6) ==85003== ==85003== Conditional jump or move depends on uninitialised value(s) ==85003== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==85003== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==85003== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==85003== by 0x547A3F: ??? (in /usr/bin/python3.6) ==85003== by 0x547D20: PyUnicode_FSConverter (in /usr/bin/python3.6) ==85003== by 0x4C51E6: ??? (in /usr/bin/python3.6) ==85003== by 0x4F8388: ??? (in /usr/bin/python3.6) ==85003== by 0x4FBD83: ??? (in /usr/bin/python3.6) ==85003== by 0x4FC914: _PyArg_ParseStack_SizeT (in /usr/bin/python3.6) ==85003== by 0x4C6C88: ??? (in /usr/bin/python3.6) ==85003== by 0x50A9D9: ??? (in /usr/bin/python3.6) ==85003== by 0x50C5B8: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==85003== ==85003== ==85003== HEAP SUMMARY: ==85003== in use at exit: 2,764,995 bytes in 1,647 blocks ==85003== total heap usage: 36,176 allocs, 34,529 frees, 62,519,002 bytes allocated ==85003== ==85003== LEAK SUMMARY: ==85003== definitely lost: 0 bytes in 0 blocks ==85003== indirectly lost: 0 bytes in 0 blocks ==85003== possibly lost: 146,155 bytes in 87 blocks ==85003== still reachable: 2,618,840 bytes in 1,560 blocks ==85003== suppressed: 0 bytes in 0 blocks ==85003== Rerun with --leak-check=full to see details of leaked memory ==85003== ==85003== For counts of detected and suppressed errors, rerun with: -v ==85003== Use --track-origins=yes to see where uninitialised values come from ==85003== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 12386 from 663) ================================================================================ 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.