【问题标题】:How do I view the execution time of my program?如何查看我的程序的执行时间?
【发布时间】:2013-10-03 01:52:14
【问题描述】:

我想知道我的程序从开始运行到结束需要多长时间,以便与过去的版本进行比较。

我将如何找到这两个版本所需的时间?我正在运行 ubuntu 12.04LTS

【问题讨论】:

  • 提示:man time.
  • 您可能希望为此使用一些适当的分析工具,例如gprof。除了已经提到的time 命令之外,这还可以让您查看在哪里您在代码中获得了性能优化与否。
  • 这个问题与 C++ 有什么关系?
  • @MM。代码是用 C++ 编写的。我原以为我可能需要编写一个时间函数,以便该标签有用。标签已被删除
  • @Gmercer015:提醒我我不是反对者。答案中建议的方法测量操作系统加载/启动和终止应用程序的整个时间。如果您需要实际时间,您应该在您的应用程序中添加一些代码。

标签: linux performance time terminal


【解决方案1】:

使用time 命令:

time yourprogram

默认情况下会输出类似这样的内容:

real    0m0.020s
user    0m0.004s
sys     0m0.000s

real 表示程序运行的总时间。 user 表示您的程序在用户空间代码中花费的时间,sys 是您的程序在内核调用中花费的时间。

【讨论】:

  • 那是一些很酷的东西,肯定回答了我的问题。谢谢!
  • 对于扩展功能,请显式使用/usr/bin/time覆盖bash等shell中的内置时间函数。
【解决方案2】:

运行time myprogram time 命令将显示您需要了解的所有详细信息。 示例:

rh63-build(greg)~>time ls >/dev/null

real    0m0.003s
user    0m0.001s
sys     0m0.002s

这里有更多关于time 命令的信息:http://linux.die.net/man/1/time

【讨论】:

    【解决方案3】:

    Linux 带有“时间”程序。

    $time ./myapp
    
    real 0m0.002s
    user 0m0.000s
    sys 0m0.000s
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-20
      • 2017-04-16
      • 2011-02-26
      • 2017-08-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多