!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!! !!!!! !!!!! 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 : model_Nb_PF_cubicsplines__MO_218026715338_001 Supported species : Nb random seed = 13 lattice constant (orig) = 3.000 perturbation amplitude = 0.300 number unit cells per side = 2 ----------------------------------------------------------------------------------------------------- MONOATOMIC STRUCTURE (pbc=False)-- Species = Nb (Configuration in file "config-F-Nb.xyz") ----------------------------------------------------------------------------------------------------- Energy = 692.900624416 Forces: 1 -9.21806300e+01 -5.67121954e+01 -1.13891273e+02 2 -1.09985606e+01 5.22447169e+01 -1.24442822e+02 3 5.93569279e+01 -1.23206609e+02 6.73526887e+01 4 -9.89655306e+01 9.43806619e+01 3.61012159e+01 5 8.96166639e+01 -1.02399221e+02 -5.44867466e+01 6 2.97692621e+01 -1.73199491e+01 -2.26852055e+01 7 8.08822281e+01 -1.86496092e+02 -1.55461562e+02 8 -5.22759174e+01 3.77659803e+01 5.82455989e+00 9 -9.07306736e+01 -7.27596097e+01 -1.59113268e+02 10 -8.19962862e+00 1.33200174e+02 -1.18650947e+02 11 -5.92555223e+01 -2.46863548e+01 1.39231245e+02 12 -6.13602409e+01 7.87397179e+01 6.00492599e+01 13 2.81906977e+01 -4.75993473e+01 -1.79239155e+02 14 1.80607984e+01 2.93112777e+01 -2.91201374e+01 15 1.74294564e+02 -6.81623746e+01 3.59698978e+00 16 1.63350478e+01 2.04031949e+02 2.53416293e+01 17 -1.25825380e+02 -7.11256367e+01 1.07907744e+01 18 3.86830198e+01 1.12119654e+02 -7.86109654e+01 19 2.66338206e+01 -1.88460995e+02 8.24987171e+01 20 -1.11211899e+02 6.50584163e+01 7.98702407e+01 21 -3.76213128e+01 -7.26956387e+01 4.80333353e+01 22 1.11723893e+02 1.23999730e+02 1.18262467e+02 23 1.32933454e+01 -8.96492743e+00 2.23676176e+01 24 7.76676092e+01 3.70565418e+01 6.45304382e+01 25 -1.77551166e+02 -1.35487525e+02 -1.43928268e+02 26 6.66805854e+01 1.88639319e+02 -1.03399234e+02 27 7.97505984e+01 -1.57579488e+02 1.13805744e+02 28 -1.41338592e+02 1.74762855e+02 1.64955264e+02 29 -1.61992860e+01 -1.26323244e+02 5.09220276e+01 30 6.40866470e+01 8.76236314e+01 3.64069521e+01 31 6.18263687e+01 -4.44764109e+01 5.74226812e+01 32 4.68622605e+01 8.55209949e+01 9.56657358e+01 MONOATOMIC STRUCTURE (pbc=True)-- Species = Nb (Configuration in file "config-T-Nb.xyz") ----------------------------------------------------------------------------------------------------- Energy = 1319.31320523 Forces: 1 -6.57698795e+00 -7.26696353e+01 -2.13559334e+01 2 -5.38742856e+01 6.64803468e+01 6.74844400e+00 3 8.87696832e+01 -5.04645293e+01 9.73162976e+01 4 -9.59881861e+00 1.30016809e+02 1.67322835e+01 5 1.78724977e+02 6.79768616e+01 -1.81384724e+01 6 -6.52298748e+01 4.49037270e+01 1.21518571e+01 7 1.45786809e+00 -1.74789543e+02 -1.96052118e+02 8 -5.52354023e+01 4.12764866e+01 8.05628773e+00 9 -1.39604596e+02 -1.41892319e+02 5.45737927e+01 10 -9.88760421e+01 1.78756118e+00 -2.32013494e+01 11 -5.77686656e+01 -2.83950032e+01 1.50694327e+02 12 3.73085853e+01 2.65214775e+01 1.35699934e+02 13 2.61339399e+01 -5.48166350e+01 -1.32457182e+02 14 -1.02718009e+02 -1.21274855e+01 -4.91578748e+01 15 1.21820179e+02 -1.13424630e+02 2.05196996e+01 16 2.29864982e+01 1.49499950e+02 5.16444782e+01 17 5.56932088e+01 -1.52001701e+02 2.51047964e+01 18 4.32404051e+01 1.16880250e+02 -8.43044100e+01 19 4.66135768e+01 -1.16678488e+02 6.13099185e+01 20 -4.40505643e+01 1.51591159e+02 -1.22846790e+01 21 -4.67875418e+01 -1.57022269e+01 4.34671908e+01 22 -5.39404240e+01 2.34643515e+02 1.48546765e+02 23 -8.38479656e+01 -2.65733849e+01 -4.95585440e+01 24 1.39445956e+02 5.46782507e+01 -7.18534486e+01 25 -1.05335199e+02 -1.81187180e+02 -1.47166994e+02 26 6.54144726e+01 1.24621073e+02 -1.32420346e+02 27 1.42297595e+02 -2.09147375e+02 -4.32941102e+01 28 -1.70206616e+02 1.90086198e+02 4.82886826e+01 29 -2.09822994e+01 -1.31210806e+02 4.74839033e+01 30 -7.01933364e+00 6.30991108e+01 4.73176268e+01 31 5.08257742e+01 -4.45467588e+01 3.17160859e+01 32 1.00919907e+02 6.15649232e+01 -2.61269085e+01 ================================================================================ VALGRIND OUTPUT ================================================================================ ==25150== Memcheck, a memory error detector ==25150== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al. ==25150== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info ==25150== Command: python runner2.py model_Nb_PF_cubicsplines__MO_218026715338_001 ==25150== ==25150== Warning: set address range perms: large range [0x20fe9000, 0x314e9000) (defined) ==25150== Warning: set address range perms: large range [0x2122d000, 0x314e9000) (defined) ==25150== Warning: set address range perms: large range [0x20fe9000, 0x314e9000) (noaccess) ==25150== Warning: set address range perms: large range [0x23029000, 0x33529000) (defined) ==25150== Warning: set address range perms: large range [0x2326d000, 0x33529000) (defined) ==25150== Warning: set address range perms: large range [0x23029000, 0x33529000) (noaccess) ==25150== Warning: set address range perms: large range [0x23029000, 0x33529000) (defined) ==25150== Warning: set address range perms: large range [0x2326d000, 0x33529000) (defined) ==25150== Warning: set address range perms: large range [0x23029000, 0x33529000) (noaccess) Using Nb potential atomic number is: 41.000000000000000 ==25150== Conditional jump or move depends on uninitialised value(s) ==25150== at 0x23231B0F: compute_energy_forces (model_driver_PF_cubic_splines.F03:616) ==25150== by 0x1FA56855: KIM_API_model::model_compute() (KIM_API.cpp:2573) ==25150== by 0x1F82824B: void pybind11::cpp_function::initialize(pybind11_init_kimapi(pybind11::module&)::{lambda(void*)#8}&&, int (*)(void*), pybind11::name const&, pybind11::scope const&, pybind11::sibling const&, pybind11::arg const&)::{lambda(pybind11::detail::function_call&)#3}::_FUN(pybind11::detail::function_call) (kim_api_bind.cpp:103) ==25150== by 0x1F8359F2: pybind11::cpp_function::dispatcher(_object*, _object*, _object*) (pybind11.h:620) ==25150== by 0x4C45F9: PyEval_EvalFrameEx (in /usr/bin/python2.7) ==25150== by 0x4C2704: PyEval_EvalCodeEx (in /usr/bin/python2.7) ==25150== by 0x4CA087: PyEval_EvalFrameEx (in /usr/bin/python2.7) ==25150== by 0x4C2704: PyEval_EvalCodeEx (in /usr/bin/python2.7) ==25150== by 0x4CA087: PyEval_EvalFrameEx (in /usr/bin/python2.7) ==25150== by 0x4C2704: PyEval_EvalCodeEx (in /usr/bin/python2.7) ==25150== by 0x4CA087: PyEval_EvalFrameEx (in /usr/bin/python2.7) ==25150== by 0x4C2704: PyEval_EvalCodeEx (in /usr/bin/python2.7) ==25150== ==25150== ==25150== HEAP SUMMARY: ==25150== in use at exit: 4,039,137 bytes in 5,781 blocks ==25150== total heap usage: 83,393 allocs, 77,612 frees, 45,977,019 bytes allocated ==25150== ==25150== LEAK SUMMARY: ==25150== definitely lost: 0 bytes in 0 blocks ==25150== indirectly lost: 0 bytes in 0 blocks ==25150== possibly lost: 162,278 bytes in 95 blocks ==25150== still reachable: 3,876,859 bytes in 5,686 blocks ==25150== suppressed: 0 bytes in 0 blocks ==25150== Rerun with --leak-check=full to see details of leaked memory ==25150== ==25150== For counts of detected and suppressed errors, rerun with: -v ==25150== Use --track-origins=yes to see where uninitialised values come from ==25150== ERROR SUMMARY: 3618 errors from 1 contexts (suppressed: 2382 from 154) ================================================================================ 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.