0
点赞
收藏
分享

微信扫一扫

【Command】time 命令

栖桐 2022-06-21 阅读 60
q@ubuntu:~/Jetson$ time sync

real 0m0.008s
user 0m0.000s
sys 0m0.004s
  • real:从进程​​sync​​​ 开始执行到完成所耗费的 CPU 总时间,包括该​​sync​​ 进程执行时实际使用的CPU时间,该进程耗费在阻塞上的时间(比如等待 I/O 操作)和其它进程所耗费的时间(Linux 是多进程系统,ls 在执行过程中,可能会有别的进程抢占 CPU)。
  • user:进程​​sync​​​ 执行用户态代码所耗费的 CPU 时间,该时间仅指​​sync​​ 进程时实际使用的 CPU 时间,不包括其它进程所使用的时间和本进程阻塞的时间。
  • sys:进程​​sync​​ 在内核态运行所耗费的 CPU 时间,即执行内核系统调用所耗费的 CPU 时间。

real = user + sys?

real 包含了其他进程占用 CPU 的情况,而 user 和 sys 仅指某一进程,故 real > user + sys 是非常有可能的。

real > user + sys?

一般来说,在单核系统上,这个关系式是成立的。但是在多核 CPU 上,有些程序能够同时利用到多核 CPU 的计算能力,本来,完成同样的工作实际需要 user + sys 时间,但是,现在多个 CPU 同时帮忙,实际运行时间 real 大大少于单个 CPU 运行的时间(user+sys),故 real < user + sys。

real < user + sys?

real < user + sys 在多核情况下一般成立,但是在单核下,一般有 real > user + sys。

总之,real 和 user + sys 的大小关系与单核还是多核系统有关。


举报

相关推荐

0 条评论