---
title: 网卡中断绑核
description: "手动绑定网卡中断，根据网卡所属CPU将其进行分配，从而优化系统网络性能。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/PostgreSQL/kunpengdbstune_05_0009.html
sourcePath: /source/zh/kunpengdbs/ecosystemEnable/PostgreSQL/kunpengdbstune_05_0009.html
indexId: afc377987cd53efb81a54a27f0f0bee9acd34767e9348634974f3f695bba350e76
---
# 网卡中断绑核

#### 目的

手动绑定网卡中断，根据网卡所属CPU将其进行分配，从而优化系统网络性能。


#### 方法

对于不同的硬件配置，用于绑中断的最佳CPU数目会有差异，比如对于鲲鹏920 5250处理器+Huawei TM280 25G网卡（鲲鹏服务器的板载网卡）来说，最多可以绑定32个中断队列，建议将所有的队列都用在中断绑定上来获得最佳性能。

以下脚本是在鲲鹏920 5250处理器+Huawei TM280 25G网卡上的最佳绑中断设置，其中第一个参数$1是网卡名称，第二个参数$2是队列数目32，第三个参数$3是网卡对应的总线名，可以用ethtool -i <网卡名>查询出：

```
#!/bin/bash
eth1=$1
cnt=$2
bus=$3
ethtool -L $eth1 combined $cnt

irq1=`cat /proc/interrupts| grep -E ${bus} | head -n$cnt | awk -F ':' '{print $1}'`
irq1=`echo $irq1`
cpulist=(0 1 2 3 4 5 6 7 {51..71} 93 94 95)
c=0
for irq in $irq1
do
    echo ${cpulist[c]} "->" $irq
    echo ${cpulist[c]} > /proc/irq/$irq/smp_affinity_list
    let "c++"
done
```
