Chinaunix首页 | 论坛 | 博客
  • 博客访问: 785947
  • 博文数量: 56
  • 博客积分: 451
  • 博客等级: 下士
  • 技术积分: 1431
  • 用 户 组: 普通用户
  • 注册时间: 2012-01-20 11:14
文章分类

全部博文(56)

文章存档

2013年(35)

2012年(21)

分类: LINUX

2012-03-13 10:28:59

网卡IRQ绑定CPU实验

 

 

随着cpu内核的增多的及中断处理机制的提升,linux社区在kernel 2.4 以后的版本支持把不同的硬件中断请求(IRQ)分配到特定的 “CPU ”上,这个绑定技术被称为 SMP IRQ Affinity

 

试验过程如下:

 

1.首先查看当前系统上的中断是如何分配的

可以看出当前eth0cpu0 cpu1上都有中断请求

 

2、查看一下当前eth0对应的IRQ 67中断的smp affinity

 

不同CPU二进制与十六进制之间的对应关系表

               Binary       Hex    CPU 0    00000001         1    CPU 1    00000010         2    CPU 2    00000100         4    CPU 3    00001000         8

 

需要注意的是smp_affinity的值都是以十六进制的数值存放的,从上图可知道

Eth0的中断被分配给了cpu1上来执行,

3、实验结果对比

在停止irqbalance 服务后

不断查看中断表可以看出cpu0上的中断数一直没有变化,而cpu1上的不断在变化

 


4、改变eth0的中断设置

 

重新查看中断表中eth0的中断值变化情况

通过此实验得知:如果当前系统网络应用比较繁忙的情况下,可以单独绑定网卡的IRQ到指定的CPU上或者其他设备指定到单独的CPU上来提高系统整体的处理中断的能力,从而提高整体的吞吐负载性能

阅读(11923) | 评论(2) | 转发(1) |
给主人留下些什么吧!~~

hue25502016-07-02 23:56:01

受教了,最近的项目就是被这个所困扰,这是一种解决方案啊