高带宽网络和 Windows "System Interrupts" 过程

High bandwidth Networking and the Windows "System Interrupts" Process

我正在编写一个海量的 UDP 网络应用程序。 运行 每秒 10G 的流量。 我在任务管理器中 "System Interrupts" CPU 使用率非常高。

阅读这意味着什么,我明白了:

What Is the “System Interrupts” Process?

System Interrupts is an official part of Windows and, while it does appear as a process in Task Manager, it’s not really a process in the traditional sense. Rather, it’s an aggregate placeholder used to display the system resources used by all the hardware interrupts happening on your PC.

但是大多数文章都说高值对应于故障硬件。

但是,由于 "system interrupts" 条目与高 IRQ 使用相关,考虑到我的大量 UDP 网络使用,这可能应该很高。

此外,所有这些真的都发生在一个 CPU 核心上吗?或者这是所有 CPU 个核心发生的所有事情的总和。

如果您有许多单独的数据报通过 UDP 发送,它肯定会导致大量硬件中断和大量 CPU 使用。如果你的数据报比较小,10Gb肯定在"lots of CPU"的范围内。

每个 CPU 都有自己的硬件中断。您可以在性能选项卡上查看负载在内核上的分布情况 - 红线是内核 CPU 时间,其中包括硬件中断和 OS 的其他低级套接字处理。