!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 ----------------------------------------------------------------------------------------------------- Results for KIM Model : Morse_Shifted_Glyde_1970_Ne__MO_169434419764_003 Supported species : Ne random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Ne (Configuration in file "config-F-Ne.xyz") ----------------------------------------------------------------------------------------------------- Energy = 34.40654739209448 Forces: 1 -1.94275276e+00 -2.07109529e+00 -3.11213280e+00 2 -1.69569268e+00 2.06336728e+00 -2.40542795e+00 3 6.30061246e-01 -2.02853632e+00 1.77723512e+00 4 -1.56101477e+00 1.70488402e+00 1.16645915e+00 5 1.82402630e+00 -3.73003517e+00 -1.40198003e+00 6 1.66883514e+00 6.65591297e-01 -1.97692522e+00 7 1.18280124e+00 -8.56880065e+00 -8.00832062e+00 8 -6.57607744e+00 -6.22936576e+00 8.94839237e-01 9 -3.65902486e+00 -6.47924690e-01 -3.70343242e+00 10 -2.04634202e+00 5.38454478e+00 -5.29689033e+00 11 -1.45829196e+00 -4.05898722e+00 4.01708774e+00 12 -2.08421668e+00 4.78850053e+00 -2.84521100e+00 13 -1.43982613e+00 -1.42481424e+00 -1.18665386e+01 14 1.70608050e+00 1.82256497e+00 -8.69145107e-01 15 1.24363855e+01 3.34916975e+00 3.93283719e+00 16 2.53859120e+00 6.88589211e+00 4.53352331e+00 17 -3.02480589e+00 -2.18751841e+00 -1.61385929e+00 18 1.57563370e+00 1.87191393e+00 -4.18515301e-01 19 1.28560232e+00 -2.95798677e+00 1.83053915e+00 20 -1.43046874e+00 1.79309308e+00 1.84435626e+00 21 -3.32650555e+00 -2.22816603e+00 2.16364578e+00 22 5.07322229e+00 7.16983187e+00 6.62773099e+00 23 9.29606301e-01 -4.90520681e-01 1.92528831e+00 24 9.43627068e-01 7.61242505e-01 1.12020497e+00 25 -1.63599724e+00 -4.32817897e+00 3.04749010e+00 26 -1.57592987e+00 4.58289269e+00 -2.37829677e+00 27 4.65485370e+00 -9.70607434e+00 2.76780735e+00 28 -8.50288498e+00 7.47140991e+00 1.20489574e+00 29 -2.06660715e+00 -3.05459037e+00 9.04963430e-01 30 1.93800887e+00 3.71947048e+00 -2.12738017e+00 31 3.41310189e+00 -3.93587352e+00 4.37419857e+00 32 2.22600149e+00 3.61409920e+00 3.89095318e+00 MONOATOMIC STRUCTURE (pbc=True)-- Species = Ne (Configuration in file "config-T-Ne.xyz") ----------------------------------------------------------------------------------------------------- Energy = 34.40654739209448 Forces: 1 -1.94275276e+00 -2.07109529e+00 -3.11213280e+00 2 -1.69569268e+00 2.06336728e+00 -2.40542795e+00 3 6.30061246e-01 -2.02853632e+00 1.77723512e+00 4 -1.56101477e+00 1.70488402e+00 1.16645915e+00 5 1.82402630e+00 -3.73003517e+00 -1.40198003e+00 6 1.66883514e+00 6.65591297e-01 -1.97692522e+00 7 1.18280124e+00 -8.56880065e+00 -8.00832062e+00 8 -6.57607744e+00 -6.22936576e+00 8.94839237e-01 9 -3.65902486e+00 -6.47924690e-01 -3.70343242e+00 10 -2.04634202e+00 5.38454478e+00 -5.29689033e+00 11 -1.45829196e+00 -4.05898722e+00 4.01708774e+00 12 -2.08421668e+00 4.78850053e+00 -2.84521100e+00 13 -1.43982613e+00 -1.42481424e+00 -1.18665386e+01 14 1.70608050e+00 1.82256497e+00 -8.69145107e-01 15 1.24363855e+01 3.34916975e+00 3.93283719e+00 16 2.53859120e+00 6.88589211e+00 4.53352331e+00 17 -3.02480589e+00 -2.18751841e+00 -1.61385929e+00 18 1.57563370e+00 1.87191393e+00 -4.18515301e-01 19 1.28560232e+00 -2.95798677e+00 1.83053915e+00 20 -1.43046874e+00 1.79309308e+00 1.84435626e+00 21 -3.32650555e+00 -2.22816603e+00 2.16364578e+00 22 5.07322229e+00 7.16983187e+00 6.62773099e+00 23 9.29606301e-01 -4.90520681e-01 1.92528831e+00 24 9.43627068e-01 7.61242505e-01 1.12020497e+00 25 -1.63599724e+00 -4.32817897e+00 3.04749010e+00 26 -1.57592987e+00 4.58289269e+00 -2.37829677e+00 27 4.65485370e+00 -9.70607434e+00 2.76780735e+00 28 -8.50288498e+00 7.47140991e+00 1.20489574e+00 29 -2.06660715e+00 -3.05459037e+00 9.04963430e-01 30 1.93800887e+00 3.71947048e+00 -2.12738017e+00 31 3.41310189e+00 -3.93587352e+00 4.37419857e+00 32 2.22600149e+00 3.61409920e+00 3.89095318e+00 ================================================================================ VALGRIND OUTPUT ================================================================================ ==73661== Memcheck, a memory error detector ==73661== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==73661== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ==73661== Command: python runner2.py Morse_Shifted_Glyde_1970_Ne__MO_169434419764_003 ==73661== ==73661== Conditional jump or move depends on uninitialised value(s) ==73661== at 0x4FCBE77: __wcsnlen_avx2 (strlen-avx2.S:261) ==73661== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==73661== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==73661== by 0x54744F: ??? (in /usr/bin/python3.6) ==73661== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==73661== by 0x5BA510: ??? (in /usr/bin/python3.6) ==73661== by 0x551760: ??? (in /usr/bin/python3.6) ==73661== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==73661== by 0x50AB52: ??? (in /usr/bin/python3.6) ==73661== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==73661== by 0x509CE7: ??? (in /usr/bin/python3.6) ==73661== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==73661== ==73661== Conditional jump or move depends on uninitialised value(s) ==73661== at 0x4E63408: internal_utf8_loop (loop.c:298) ==73661== by 0x4E63408: __gconv_transform_internal_utf8 (skeleton.c:609) ==73661== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==73661== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==73661== by 0x54744F: ??? (in /usr/bin/python3.6) ==73661== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==73661== by 0x5BA510: ??? (in /usr/bin/python3.6) ==73661== by 0x551760: ??? (in /usr/bin/python3.6) ==73661== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==73661== by 0x50AB52: ??? (in /usr/bin/python3.6) ==73661== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==73661== by 0x509CE7: ??? (in /usr/bin/python3.6) ==73661== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==73661== ==73661== Conditional jump or move depends on uninitialised value(s) ==73661== at 0x4E63411: internal_utf8_loop (loop.c:303) ==73661== by 0x4E63411: __gconv_transform_internal_utf8 (skeleton.c:609) ==73661== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==73661== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==73661== by 0x54744F: ??? (in /usr/bin/python3.6) ==73661== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==73661== by 0x5BA510: ??? (in /usr/bin/python3.6) ==73661== by 0x551760: ??? (in /usr/bin/python3.6) ==73661== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==73661== by 0x50AB52: ??? (in /usr/bin/python3.6) ==73661== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==73661== by 0x509CE7: ??? (in /usr/bin/python3.6) ==73661== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==73661== ==73661== Conditional jump or move depends on uninitialised value(s) ==73661== at 0x4E63458: internal_utf8_loop (loop.c:298) ==73661== by 0x4E63458: __gconv_transform_internal_utf8 (skeleton.c:609) ==73661== by 0x4EF9EF4: wcsrtombs (wcsrtombs.c:110) ==73661== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==73661== by 0x54744F: ??? (in /usr/bin/python3.6) ==73661== by 0x6332BD: _Py_stat (in /usr/bin/python3.6) ==73661== by 0x5BA510: ??? (in /usr/bin/python3.6) ==73661== by 0x551760: ??? (in /usr/bin/python3.6) ==73661== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==73661== by 0x50AB52: ??? (in /usr/bin/python3.6) ==73661== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==73661== by 0x509CE7: ??? (in /usr/bin/python3.6) ==73661== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==73661== ==73661== Conditional jump or move depends on uninitialised value(s) ==73661== at 0x4FCBCEC: __wcsnlen_avx2 (strlen-avx2.S:103) ==73661== by 0x4EF9EC1: wcsrtombs (wcsrtombs.c:104) ==73661== by 0x4E7FB20: wcstombs (wcstombs.c:34) ==73661== by 0x54744F: ??? (in /usr/bin/python3.6) ==73661== by 0x547730: PyUnicode_FSConverter (in /usr/bin/python3.6) ==73661== by 0x4CABB1: ??? (in /usr/bin/python3.6) ==73661== by 0x551760: ??? (in /usr/bin/python3.6) ==73661== by 0x5AA69B: _PyObject_FastCallKeywords (in /usr/bin/python3.6) ==73661== by 0x50AB52: ??? (in /usr/bin/python3.6) ==73661== by 0x50C548: _PyEval_EvalFrameDefault (in /usr/bin/python3.6) ==73661== by 0x509CE7: ??? (in /usr/bin/python3.6) ==73661== by 0x50AA1C: ??? (in /usr/bin/python3.6) ==73661== ==73661== ==73661== HEAP SUMMARY: ==73661== in use at exit: 2,725,642 bytes in 1,595 blocks ==73661== total heap usage: 35,449 allocs, 33,854 frees, 62,774,775 bytes allocated ==73661== ==73661== LEAK SUMMARY: ==73661== definitely lost: 0 bytes in 0 blocks ==73661== indirectly lost: 0 bytes in 0 blocks ==73661== possibly lost: 144,425 bytes in 86 blocks ==73661== still reachable: 2,581,217 bytes in 1,509 blocks ==73661== suppressed: 0 bytes in 0 blocks ==73661== Rerun with --leak-check=full to see details of leaked memory ==73661== ==73661== For counts of detected and suppressed errors, rerun with: -v ==73661== Use --track-origins=yes to see where uninitialised values come from ==73661== ERROR SUMMARY: 6672 errors from 5 contexts (suppressed: 15518 from 617) ================================================================================ 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.