【发布时间】:2015-03-18 20:34:23
【问题描述】:
这恰好是我的课堂测试题之一。 在需求分页系统中,CPU 利用率为 20%,分页磁盘利用率为 97.7% 如果提高 CPU 速度,这种情况下 CPU 使用率会增加吗?
【问题讨论】:
这恰好是我的课堂测试题之一。 在需求分页系统中,CPU 利用率为 20%,分页磁盘利用率为 97.7% 如果提高 CPU 速度,这种情况下 CPU 使用率会增加吗?
【问题讨论】:
在这个例子中,分页实际上是一个瓶颈。单位时间的计算量可能会随着 CPU 速度的加快而略有增加,但与 CPU 速度的增加不成比例(因此百分比利用率会降低)。
快速而肮脏的估计将使用阿姆达尔定律。在示例中,80% 的工作是分页,20% 是 CPU 限制的,因此 CPU 性能的 N 倍改进将导致 1/((1 - 0.2) + (0.2/N)) 的加速因子.
更现实的估计会增加对排队理论的认识,以认识到如果分页请求更频繁地出现,即使缓冲区大小固定,利用率实际上也会增加。但是,分页利用率的增加小于请求频率的增加。
不看排队论的细节,也可以简单地看出分页的最大潜在改进只是超过 2%。 (如果将分页利用率提高到 100%:100/97.7 或 1.0235。)即使在 100% 的分页利用率下,分页也会占用原始时间的 0.80/(100/97.7),因此显然没有太多改进的机会。
如果 CPU 速度提高 10 倍,有效地将分页利用率提高到 100%,那么在原始系统下的每一秒工作将使用 781.6 毫秒的分页 (800 ms / (100/97.7)) 和 20 毫秒的 CPU ( 200 毫秒/10)。 CPU 利用率将降低到 20 / (781.6 + 20) 或约 2.5%。
【讨论】: