打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
CPU time与WALL time

CPU时间

进程时间也称CPU时间,用以度量进程使用的中央处理器资源。进程时间以时钟嘀嗒计算,实际时间(Real),用户CPU时间(User),系统CPU时间(Sys)

实际时间指实际流逝的时间;用户时间和系统时间指特定进程使用的CPU时间:

  • real time是从进行开始执行到完成所经历的墙上时钟时间(wall clock)时间,包括其他进程使用的时间片(time slice)和本进程耗费在阻塞(如等待I/O操作完成)上的时间。
  • user time是进程执行用户态代码(内核外)耗费的CPU时间,仅统计该进程执行时实际使用的CPU时间,而不计入其他进程使用的时间片和本进程阻塞的时间
  • sys time 是该进程在内核态运行所耗费的CPU时间,即内核执行系统调用所使用的CPU时间

CPU总时间(user + sys)是CPU执行用户进程操作和内核(代表用户进程执行)系统调用所耗时间的总和,即该进程(包括线程和子进程)所使用的实际CPU时间。若程序循环遍历数组,则增加用户CPU时间;若程序执行exec或fork等系统调用,则增加系统CPU时间。
在多核处理器机器上,若进程含有多个线程或通过fork调用创建子进程,则实际时间可能小于CPU总时间,因为不同线程或进程可并行执行,但其时间会计入主进程的CPU总时间。若程序在某段时间处于等待状态而并未执行,则实际时间可能大于CPU总时间:
  1. real < CPU  表明进程为计算密集型(CPU bound),利用多核处理器的并行执行优势
  2. real ≈ CPU  表明进程为计算密集型,未并行执行
  3. real > CPU  表明进程为I/O密集型 (I/O bound),多核并行执行优势并不明显

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
性能分析Linux服务器CPU利用率
【原创】高性能服务器本质论 - CppExplore - C 博客
多个线程之间是如何提高效率的
PHP性能检测与优化
聊聊 top 命令中的 CPU 使用率
Linux 中 CPU 利用率是如何算出来的?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服