查看网卡中断在哪个CPU核处理

文章介绍了如何在Linux系统中查看和修改网卡中断处理的CPU核,以优化性能。通过查看CPU占用率、中断处理分布,可以发现瓶颈。然后,通过调整中断亲和性(smp_affinity),将网卡中断从一个CPU转移到另一个,例如从CPU1转移到CPU4,以减轻特定CPU的负担并提升系统整体性能。
摘要由CSDN通过智能技术生成

在默认的情况下Linux默认一个网卡的中断操作都在一个CPU核里处理,在大数据量或者说是对网卡的收发包性能PPS进行测试时,对网卡进行IO操作就成了最消耗CPU的瓶颈。如果我们有多网卡同时收发包的话,我们可以通过人为修改网卡中断的处理用的CPU核,来达到更好的性能。

1、查看CPU占用率

如下图所示,我们可以看到si占用的9.6%的CPU都出现第2个CPU核,而其它CPU核并没有来帮助处理。
在这里插入图片描述

2、查看系统的中断处理在各个CPU核间的分布情况

如下图,我们可以看到编号为128的网卡设备enp2s0的大量的中断都由CPU1进行处理了

sudo cat /proc/interrupts

在这里插入图片描述

3、查看用于处理网卡中断的CPU核

cat /proc/irq/128/smp_affinity

我们会看到返回的结果是2,转换成2进制就是0x0010说明在第2个CPU既CPU1上(说明:这里用的是bit mask, 如果是0x0001表示第一个CPU, 0x0010表示第二个CPU, 0x0100表示第三个CPU, 0x1000表示第四个CPU )

4、修改用于处理网卡中断的CPU核

进入root模式后,使用如下命令将系统设置成用第4个CPU(8 = 0x1000)来处理网卡的中断

echo "8">/proc/irq/128/smp_affinity

再用以下命令,我们可以看到第2个CPU上的中断数量不再增加,而第4个CPU上的中断数量在不停的增加,说明网卡的中断已经转到第4个CPU处理了

sudo cat /proc/interrupts

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值