Chapter II. Network (NIC/TOE)
Linux's
irqbalance
Note
multiprocessor platform. However,
all hardware devices across processors. For a server with T5/T4 network card
constantly receiving large volume of data at 40/10Gbps, the network interrupt
demands are significantly high. Under such circumstances, it is necessary to enable
RSS to balance the network load across multiple processors and achieve the best
performance.
Interrupt Coalescing
The idea behind Interrupt Coalescing (IC) is to avoid flooding the host CPUs with too many
interrupts. Instead of throwing one interrupt per incoming packet, IC waits for 'n' packets to be
available in the Rx queues and placed into the host memory through DMA operations before an
interrupt is thrown, reducing the CPU load and thus improving latency. It can be changed using
the following command:
[root@host~]# ethtool –C ethX rx-frames n
For more information, run the following command:
Note
[root@host~]# ethtool -h
Configuring sysctl, adaptive interrupts, select_queue (NIC)
i.
Turn off irqbalance
[root@host~]# /etc/init.d/irqbalance stop
ii. Add the following sysctl parameters to /etc/sysctl.conf
sysctl -w net.ipv4.tcp_timestamps=0
sysctl -w net.ipv4.tcp_low_latency=1
sysctl -w net.core.netdev_max_backlog=250000
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.core.rmem_default=16777216
sysctl -w net.core.wmem_default=16777216
sysctl -w net.core.optmem_max=16777216
sysctl -w net.ipv4.tcp_rmem='4096 87380 16777216'
sysctl -w net.ipv4.tcp_wmem='4096 65536 16777216'
Chelsio T5/T4 Unified Wire for Linux
may take charge of distributing interrupts among CPUs on a
irqbalance
distributes interrupt requests from
Page 58
Need help?
Do you have a question about the Chelsio T5 and is the answer not in the manual?
Questions and answers