请参阅带有gprof的C程序使用的内存

请参阅带有gprof的C程序使用的内存,c,memory-management,gprof,C,Memory Management,Gprof,我正在运行我的C程序,我想看看它使用的内存。我正在使用分析器。是否可以使用gprof?或者我必须研究配置文件?您可以使用gprof-但是您需要确保您已经使用正确的配置文件选项(-pg)编译了c程序。例如: cc -o cprogram program.c othercode.c -g -pg 要使用gprof,请查看手册页-简而言之: gprof <options> [executable-file [profile-data-files...]] [> outfile]

我正在运行我的C程序,我想看看它使用的内存。我正在使用分析器。是否可以使用
gprof
?或者我必须研究配置文件?

您可以使用gprof-但是您需要确保您已经使用正确的配置文件选项(-pg)编译了c程序。例如:

cc -o cprogram program.c othercode.c -g -pg
要使用gprof,请查看手册页-简而言之:

gprof <options> [executable-file [profile-data-files...]] [> outfile]
gprof[可执行文件[配置文件数据文件…][>outfile]

我希望这有帮助

您可以使用gprof,但您需要确保已使用正确的评测选项(-pg)编译了c程序。例如:

cc -o cprogram program.c othercode.c -g -pg
要使用gprof,请查看手册页-简而言之:

gprof <options> [executable-file [profile-data-files...]] [> outfile]
gprof[可执行文件[配置文件数据文件…][>outfile]

我希望这有帮助

如果要沿着Valgrind路线走下去,Massif是要使用的工具:


valgrind--tool=massif你的应用程序-你的选项

如果你想沿着valgrind路线走下去,massif是要使用的工具:


valgrind--tool=massif your_app-your_options

我的印象是,
gprof
主要用于计时性能,而不是测量所使用的内存量。Valgrind更关心记忆。我只是用它来检测“内存滥用”;还有其他方法可以使用它,其中一种可能适合您。我的印象是,
gprof
主要用于计时性能,而不是测量使用的内存量。Valgrind更关心记忆。我只是用它来检测“内存滥用”;还有其他方法可以使用它,其中一种可能适合您。这如何帮助OP查看使用的内存?我将问题解释为如何分析正在运行的应用程序。如果OP只想查看所使用的内存,那么gprof(以及相关的编译器/链接器选项)是不必要的,因为“top”就足够了。即使valgrind也需要使用-pg选项。您可能还想查看一下,谢谢您的评论。我正在读关于gprof的书。我认为gprof无法测量已用内存。这只是每个函数和函数调用所花费的时间。我将看到valgrid配置文件。这如何帮助OP查看使用的内存?我将问题解释为如何配置正在运行的应用程序。如果OP只想查看所使用的内存,那么gprof(以及相关的编译器/链接器选项)是不必要的,因为“top”就足够了。即使valgrind也需要使用-pg选项。您可能还想查看一下,谢谢您的评论。我正在读关于gprof的书。我认为gprof无法测量已用内存。这只是每个函数和函数调用所花费的时间。我将看到valgrid的简介。