<div dir="ltr"><div><div><div><div><div><div><div>Hello,<br><br></div>I have a program using Adol-c (adapted from the examples) with 89 variables.<br></div><div>My system quickly runs out of memory when I try to determine a sparse 
Hessian.<br></div><div>Adol-c appears to go into an infinite loop inside sparse_hess.<br><br></div><div>I've check model taping with valgrind and nothing was reported.<br></div><div>Valgrind does report the use of uninitialised values inside sparse_hess:<br><br></div><div>==19260== Conditional jump or move depends on uninitialised value(s)<br>==19260==    at 0x4EDA8C1: traverse_unary (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4EDA8B0: traverse_unary (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4EDA2C4: nonl_ind_forward_safe (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4EF1696: sparse_hess (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4018DB: main (adolc_mem.cpp:61)<br>==19260==  Uninitialised value was created by a heap allocation<br>==19260==    at 0x4C2BBCF: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>==19260==    by 0x4ED94C0: nonl_ind_forward_safe (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4EF1696: sparse_hess (in /usr/lib/x86_64-linux-gnu/libadolc.so.2.1.0)<br>==19260==    by 0x4018DB: main (adolc_mem.cpp:61)<br></div></div></div><br>This message repeats multiple times until it runs out of memory.<br><br></div><div>Unfortunately I do not have debugging symbols installed for Adol-c (the package was taken from debian).<br></div>I'm using adolc 2.6.0 in ubuntu 15.10 and the program was compiled with c++11.<br><br></div><div>Although the library name "libadolc.so.2.1.0" it is supposed to be adol-c 2.6.<br>Debian packages it like this:<br><a href="https://packages.debian.org/stretch/amd64/libadolc2/filelist">https://packages.debian.org/stretch/amd64/libadolc2/filelist</a><br></div><div><br></div><div>Can anyone replicate my problem?<br></div><div>I've attached the sources and recommend limiting the program memory before executing it (e.g.: ulimit -Sv 5000000).<br><br></div><div>Best regards,<br></div><div>João Leal<br></div><br></div></div>