在
CPU time的维基百科页面中,它说
The cpu time is measured in clock ticks or seconds. Often,it is
useful to measure cpu time as a percentage of the cpu’s capacity,
which is called the cpu usage.
我不明白如何用百分比取代持续时间.当我查看顶部时,%cpu是否告诉我MATLAB正在使用2.17的内核?
PID USER PR NI VIRT RES SHR S %cpu %MEM TIME+ COMMAND 18118 jasl 20 0 9248400 261528 78676 S 217.2 0.1 8:14.75 MATLAB
题
解决方法
cpu时间以离散时间片(滴答)分配.对于一定数量的时间片,cpu是忙的,有时则不是(由空闲进程表示).在下图中,cpu忙于10个cpu片中的6个. 6/10 = .60 =繁忙时间的60%(因此将有40%的空闲时间).
百分比定义为“一个数字或速率,表示为某个部分,分为100个部分”.因此,在这种情况下,这些部分是离散的时间片,而某些部分是繁忙的时间片与空闲时间片 – 忙时空闲时间片的速率.
由于cpu以GHz(每秒十亿分之一秒)运行.操作系统将该时间切换为称为刻度的较小单位.它们实际上不是1/10秒. Windows中的滴答速率为10 million ticks in a second,而在Linux中则为sysconf(_SC_CLK_TCK)(通常为每秒100滴).
在像top这样的东西中,繁忙的cpu周期然后被进一步细分为用户时间和系统时间等百分比.在Windows上的Linux和perfmon中,你经常会得到超过100%的显示,这是因为总数是100%* the_number_of_cpu_cores.
在操作系统中,调度程序的工作是将这些宝贵的切片分配给进程,因此调度程序会报告此情况.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。