这是在 Dell R730 双 CPU 插槽上,每个插槽有 8 个物理核心。启用 HT 后,lscpu 看起来像
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 32
On-line CPU(s) list: 0-31
Thread(s) per core: 2
Core(s) per socket: 8
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 63
Model name: Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz
Stepping: 2
CPU MHz: 2600.125
BogoMIPS: 5200.65
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 20480K
NUMA node0 CPU(s): 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30
NUMA node1 CPU(s): 1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31
该机器运行在 Ubuntu 16.04(4.4 内核)上。此机器上运行的应用程序是 L4 负载均衡器。并且此机器具有 8x10G i40e 驱动程序的网卡。'lstopo' 命令显示 4 个 10G NIC 连接到插槽 0,其他 4 个连接到插槽 1。所以我认为如果我平等地加载所有 8 个 NIC,如果中断在所有 CPU 上均匀平衡,则所有 CPU 都必须平等使用。
我已将插槽 0 上的 4 个 NIC 固定到偶数 CPU 上,将插槽 1 上的 4 个 NIC 固定到奇数 CPU 上。我的问题是:当从客户端生成负载时,我看到几秒钟内所有 CPU 都处于同等空闲状态,约为 0.1%,而几秒钟后,插槽 1 上的 CPU 变得更加空闲,约为 30% 空闲
Tasks: 337 total, 31 running, 305 sleeping, 0 stopped, 1 zombie
%Cpu0 : 5.0 us, 22.8 sy, 0.0 ni, 1.0 id, 0.0 wa, 0.0 hi, 71.3 si, 0.0 st
%Cpu1 : 7.1 us, 43.4 sy, 0.0 ni, 27.3 id, 0.0 wa, 0.0 hi, 22.2 si, 0.0 st
%Cpu2 : 3.0 us, 18.8 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 76.2 si, 0.0 st
%Cpu3 : 10.0 us, 38.0 sy, 0.0 ni, 33.0 id, 0.0 wa, 0.0 hi, 19.0 si, 0.0 st
%Cpu4 : 5.0 us, 24.0 sy, 0.0 ni, 1.0 id, 0.0 wa, 0.0 hi, 70.0 si, 0.0 st
%Cpu5 : 9.9 us, 31.7 sy, 0.0 ni, 32.7 id, 0.0 wa, 0.0 hi, 25.7 si, 0.0 st
%Cpu6 : 1.0 us, 18.8 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 78.2 si, 0.0 st
%Cpu7 : 6.2 us, 41.7 sy, 0.0 ni, 28.1 id, 0.0 wa, 0.0 hi, 24.0 si, 0.0 st
%Cpu8 : 1.0 us, 16.0 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 81.0 si, 0.0 st
%Cpu9 : 5.3 us, 44.2 sy, 0.0 ni, 30.5 id, 0.0 wa, 0.0 hi, 20.0 si, 0.0 st
%Cpu10 : 7.0 us, 19.0 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 72.0 si, 0.0 st
%Cpu11 : 4.1 us, 46.9 sy, 0.0 ni, 29.6 id, 0.0 wa, 0.0 hi, 19.4 si, 0.0 st
%Cpu12 : 2.0 us, 22.0 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 74.0 si, 0.0 st
%Cpu13 : 3.0 us, 40.4 sy, 0.0 ni, 29.3 id, 0.0 wa, 0.0 hi, 27.3 si, 0.0 st
%Cpu14 : 4.0 us, 25.7 sy, 0.0 ni, 2.0 id, 0.0 wa, 0.0 hi, 68.3 si, 0.0 st
%Cpu15 : 7.1 us, 36.4 sy, 0.0 ni, 31.3 id, 0.0 wa, 0.0 hi, 25.3 si, 0.0 st
%Cpu16 : 5.8 us, 50.5 sy, 0.0 ni, 2.9 id, 0.0 wa, 0.0 hi, 40.8 si, 0.0 st
%Cpu17 : 2.9 us, 39.8 sy, 0.0 ni, 33.0 id, 0.0 wa, 0.0 hi, 24.3 si, 0.0 st
%Cpu18 : 7.1 us, 48.5 sy, 0.0 ni, 4.0 id, 0.0 wa, 0.0 hi, 40.4 si, 0.0 st
%Cpu19 : 2.1 us, 35.8 sy, 0.0 ni, 36.8 id, 0.0 wa, 0.0 hi, 25.3 si, 0.0 st
%Cpu20 : 3.9 us, 49.5 sy, 0.0 ni, 1.9 id, 0.0 wa, 0.0 hi, 44.7 si, 0.0 st
%Cpu21 : 3.9 us, 30.4 sy, 0.0 ni, 34.3 id, 0.0 wa, 0.0 hi, 31.4 si, 0.0 st
%Cpu22 : 4.9 us, 50.5 sy, 0.0 ni, 2.9 id, 0.0 wa, 0.0 hi, 41.7 si, 0.0 st
%Cpu23 : 7.2 us, 35.1 sy, 0.0 ni, 37.1 id, 0.0 wa, 0.0 hi, 20.6 si, 0.0 st
%Cpu24 : 2.9 us, 44.1 sy, 0.0 ni, 5.9 id, 0.0 wa, 0.0 hi, 47.1 si, 0.0 st
%Cpu25 : 1.0 us, 43.4 sy, 0.0 ni, 32.3 id, 0.0 wa, 0.0 hi, 23.2 si, 0.0 st
%Cpu26 : 2.0 us, 47.5 sy, 0.0 ni, 5.0 id, 0.0 wa, 0.0 hi, 45.5 si, 0.0 st
%Cpu27 : 7.3 us, 37.5 sy, 0.0 ni, 32.3 id, 0.0 wa, 0.0 hi, 22.9 si, 0.0 st
%Cpu28 : 4.9 us, 49.5 sy, 0.0 ni, 5.8 id, 0.0 wa, 0.0 hi, 39.8 si, 0.0 st
%Cpu29 : 5.3 us, 37.2 sy, 0.0 ni, 28.7 id, 0.0 wa, 0.0 hi, 28.7 si, 0.0 st
%Cpu30 : 4.0 us, 55.0 sy, 0.0 ni, 4.0 id, 0.0 wa, 0.0 hi, 37.0 si, 0.0 st
%Cpu31 : 2.9 us, 39.2 sy, 0.0 ni, 31.4 id, 0.0 wa, 0.0 hi, 26.5 si, 0.0 st
有什么建议或帮助可以找出为什么第二个插槽 CPU 更空闲?提前致谢。