在地块工具中跟踪子进程的命令

Command to track Child process in massif tool

本文关键字:子进程 命令 跟踪 工具      更新时间:2023-10-16

我正在使用瓦尔格林德的地块工具。我需要跟踪子进程的堆内存。我找不到任何命令来获取子进程的堆内存。我的应用程序是恶魔服务器。

在memcheck工具中,我可以使用以下命令获取子进程详细信息

--track-children=yes

有没有办法使用地块跟踪子进程堆内存?

该工具为所有子进程创建日志文件,但仅为主进程生成地块文件。

valgrind 
--tool=massif 
--heap=yes 
--time-stamp=yes 
--time-unit=ms 
--max-snapshots=1000 
--detailed-freq=5 
--log-file=../Valgrind_%p_massif.log 
--massif-out-file=../masssif_%p_output 
--xtree-memory=full 
<binary_name>

我希望为所有子进程生成地块文件。 但它只创建一个与主进程无关的文件。

我检查了文件上次访问时间。这是主进程执行时间到等待请求的时间。

您缺少选项 --trace-children=yes

--trace-children 不是 memcheck 特定的选项,它是一个通用的 valgrind 选项,必须与任何 valgrind 工具一起使用,如果您希望子进程在 exec 之后也在 valgrind 下运行。