【发布时间】:2011-03-13 18:06:53
【问题描述】:
在 Linux 中,平均负载为 1min/5min/15min。内核使用的公式实际上是指数移动平均线。
如果我们定义cpuload(1)为1min的cpu负载的第一次计算,active()为返回系统上处于“running”或“runnable”状态的进程数的函数,那么使用的公式计算 nth cpu load 1min 的内核是:
cpuload(0) 为 0;它是第一次执行cpuload()之前存储在内存中的值。
我的问题是,权重 2-5.log2(e)/60 是如何选择的?在我看来,2-5/60 会更好,因为 1 分钟将是进程数的半衰期(因为 (2-5/60) 12 = 1/2)。
除了上面的递归定义之外,如果我发布cpuload(n) 的显式公式可能会有所帮助(右键单击以查看完整大小):
【问题讨论】:
标签: linux kernel history load algorithm