我们最近升级了数据中心的存储,并将所有生产系统迁移到该存储。我们注意到,在一台机器(用于 SAP 的 HP_UX IA-64 Oracle 数据库服务器)中,CPU 利用率开始飙升,而 IO 等待率却在下降。现在 IO 等待率为 0%,所有 CPU 都以 100% 运行(0% 空闲)。之前,IO 等待率约为 30-40%(平均),CPU 空闲率约为 15-20%(平均)。存储吞吐量的增加是否真的会导致 CPU 利用率增加?
答案1
当然可以。要明确回答您的 CPU 是否因此而上升,需要更多信息,但一般来说,这种情况很常见,也很容易解释。
服务器工作负载需要等待很多东西 - CPU 和内存是本地的,因此经常需要等待网络和存储等东西。例如,我曾遇到过应用程序在访问 SSD 后变得 CPU 受限的情况。
您的应用程序从改进的存储中获取数据的速度很可能比以前快得多,以至于 CPU 现在已成为瓶颈。
答案2
存储速度的增加可以导致 CPU 的增加,因为可以向其输入更多的数据。
但是现在 CPU 通常比 RAM 运行得更快。因此 CPU 达到 100% 很奇怪。你对此提出质疑是对的。
我的猜测是其他一些东西发生了变化或者您的操作系统没有报告正确的值。