使用totalview调试内存

本文介绍了如何利用Totalview 8进行内存调试,深入探讨了在应用程序中查找和解决内存问题的关键步骤,包括变量检查、编译过程和构建调试环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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 OSF1

setenv 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 AIX

Be 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 ... 
-L/soft/toolworks/totalview.8.2.0-0/rs6000/lib ...

Add the following environment variables :

setenv AIXTHREAD_MNRATIO 1:1
setenv AIXTHREAD_SLPRATIO 1:1
setenv AIXTHREAD_SCOPE S

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. 
Devalidate the following Events:

Double free
Free unknown block

Hit <Go>. A popup appears when an error occurs.

More informations

Etnus information, please enter in Memory information here.

The Etnus FAQ for the Memory Debugging here.

Some highlights here

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值