linux如何优雅的计算程序运行时间
小编给大家分享一下linux如何优雅的计算程序运行时间,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
优雅的计算程序运行时间
在 Linux 下,可以通过 time
命令,很容易获取程序的运行时间:
$ time ./test
real 0m1.003s
user 0m0.000s
sys 0m0.000s
可以看到,程序的运行时间为: 1.003s
。细心的同学,会看到 real
貌似不等于 user
+ sys
,而且还远远大于,这是怎么回事呢?
先来解释下这三个参数的含义:
real
:表示的钟表时间,也就是从程序执行到结束花费的时间;user
:表示运行期间,cpu 在用户空间所消耗的时间;sys
:表示运行期间,cpu 在内核空间所消耗的时间;
由于 user
和 sys
只统计 cpu 消耗的时间,程序运行期间会调用 sleep 发生阻塞,也可能会等待网络或磁盘 IO,都会消耗大量时间。因此对于类似情况,real
的值就会大于其它两项之和。
另外,也会遇到 real
远远小于 user
+ sys
的场景,这是什么鬼情况?
这个更好理解,如果程序在多个 cpu 上并行,那么 user
和 sys
统计时间是多个 cpu 时间,实际消耗时间 real
很可能就比其它两个之和要小了
以上是“linux如何优雅的计算程序运行时间”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341