测量执行时间和使用的内存

时间:2009-03-13 20:09:20

标签: profiling

大多数在线评委都有某种系统来衡量执行时间和内存消耗。显示了一个示例here。怎么做?是否有一个简单的UNIX实用程序可用于在我自己的程序上运行类似的测试?

3 个答案:

答案 0 :(得分:2)

Valgrind用它的所有工具会给你一些信息:

  • cachegrind - 缓存模拟器
  • callgrind - 调用图跟踪 - 允许获取通话费用并显示程序中发生的情况
  • massif - 有关堆内存使用情况的信息
  • memcheck - 内存泄漏检查

此外,您还可以使用更复杂的软件,例如Intel VTune

如果您对低级详细信息和真实硬件计数器感兴趣,那么请查看perfmon2,它有可能在未来的某个时间进入主流内核。

并搜索旧问题 - 关于此主题的帖子很多。

答案 1 :(得分:1)

UNIX time命令将输出用户时间,系统时间和一些内存统计信息。可以找到Linux版本here并包含一些允许您指定确切输出的格式字符串。

答案 2 :(得分:1)

上次我需要分析一个Unix程序时,我使用了gcc和gprof。它为我提供了我需要的信息。