我的研究小组正在CentOS服务器上分享时间,我们一直在使用renice +15来尝试降低长时间运行的后台任务的优先级。当运行top时,这些进程确实显示为具有15的漂亮值,但是即使这些进程在30个核心上进行搅拌,“%ni”测量的漂亮cpu负载总是非常低(小于1%)(如在%CPU列中报告)。这让我们认为我们实际上并没有正确使用renice(尽管好的进程确实可以产生更高优先级的任务)。如何在顶部计算出漂亮的cpu百分比?
答案 0 :(得分:0)
顶部的数字来自于读取文件/ proc / stat。第一行包含所有cpus组合的摘要。第一列是usr时间,第二列是好时光。这些时间以时钟周期为单位,通常为每秒100,并且是累积的,因此您必须查看并且间隔并从结束值中减去起始值。您可以查看文档了解更多详情,我喜欢http://man7.org/linux/man-pages/man5/proc.5.html
如果nice值大于0,则Linux内核将CPU时间添加到nice列,否则将其置于usr列中。
通过查看/ proc / [pid] / stat的第19列,可以找到单个进程的优秀值。这个数字对你来说应该是15,而第18列的数字应该是35(内核对15的精确内部解释)。但是,如果top在NI列中显示为15,那么它的值是/ PROC / [PID] / STAT。
比较usr和sys在/ proc / [pid] / stat中使用的CPU时间然后usr,nice和sys in / proc / stat将让你很好地了解时间的来源。也许系统上只有很多CPU。