我的 Windows10 机器的 Interrupts/sec 和 CSwitch/sec 速率非常高。我想了解这是否是正常情况。对我来说,速率似乎太高了。请提供建议。
以下是按 CSwitchDelta 排序的 Procexp:
您可以看到,每秒 CSwitches 约为 50K-60K。每秒中断为 30K-50K。CPU 时间(用户和内核)不是很高。所以我不能说从用户的角度来看这是一个性能问题 - 我看不到 UI 有任何缓慢。但我看到几篇文章说 CSwitches/sec 超过 1000 是高的。我有 60000 :) 仅举一个例子 -https://technet.microsoft.com/en-us/library/cc938613.aspx(确实有点旧了)。
我知道速率很大程度上取决于机器当前正在执行的工作。我有很多正在运行的进程 - 这是我的开发机器(VS、VSCode、Firefox、Chrome、Outlook、Sublime、Slack、Adobe Reader、Onenote、Docker(没有运行容器)、PerfMon、SQLServer、Postgres)。但我能理解 CSwitches 是否由这些进程产生,但它们似乎是由中断引起的。没有任何高 CPU 密集型工作正在运行(您可以在进程时间中看到它),系统只是空闲。
我正在寻找任何指导来证明这是否是正常情况或我的机器(硬件?)出了问题。如何了解每秒中断率是否很高?提前致谢。
附注:CPU:英特尔酷睿 i7-870(英特尔 Q57)
更新:我已在 BIOS 中禁用超线程。在这里找到了这个建议 - SQL Server 框上的高上下文切换. 现在 CSwitches 速率 - 平均 20K,中断 - 平均 10K。