Memory debugging with Totalview 8
This article explains how to manage Totalview 8 and greater for debugging the memory corruption and track the memory leaks. We have the possibility to debug the memory access with the new Totalview 8. The latest documentation for totalview is available here. SEP2 offers the possibility to manage the linking by setting the environment variable $TV_HOME For OSF1setenv TV_HOME /soft/totalview/toolworks/totalview.8.x.y-z The compilation flag is : TV then to build your application: make DEBUG=1 TV=1 The consequences are : cxx -DCORBA_VB3_3 -pthread -call_shared ... -L/soft/totalview/toolworks/totalview.8.0.1-0/alpha/lib ... -lElapsed_d -lorb_r -lname_r -ltvheap ... myApplication_d Lets run your application normaly : totalview myApplication_d -a -cfgName ../myConfigFile For AIXBe careful : your machine must be at least in AIX 5.3 ML5. To verify the machine, please enter : oslevel -r. The last digit is the level. By example 5300-03 means ML3 and 5300-05 means ML5. setenv TV_HOME /usr/totalview The compilation flag is : TV then to build your application: make DEBUG=1 TV=1 The consequences are : xlC_r -I. ... /soft/toolworks/totalview.8.2.0-0/rs6000/lib/tvheap.a -o ./myApplicationApp_d ... Add the following environment variables : setenv AIXTHREAD_MNRATIO 1:1 Lets run your application normaly : totalview myApplication_d -a -cfgName ../myConfigFile Enter in Tools -> Memory Debugging -> Enable memory debugging. Validate the five buttons. Click in the [+] of the "Halt execution on memory event or error" and enter in the Advanced button.
Hit <Go>. A popup appears when an error occurs. More informationsEtnus information, please enter in Memory information here. The Etnus FAQ for the Memory Debugging here. Some highlights here |