How to distribute CPU loading when doing switching?
I connect 2 linux machine to ETH1 & ETH2, both part of br-lan.
When running
From ETH1
iperf3 -c ETH2, result 941Mbits/ec
ALL CPU 2208MHz
CPU0 ~81%
CPU1/2/3 ~0%
Both running concurrently:
iperf3 -c ETH1
iperf3 -c ETH2
ALL CPU 2208MHz
CPU0 ~100%
CPU1/2/3 ~0%
result: ~850Mbits/sec for both ETH1&2
I have below in my local startup:
#assign 4 rx interrupts to each cores
echo 8 > /proc/irq/50/smp_affinity
echo 4 > /proc/irq/51/smp_affinity
echo 2 > /proc/irq/52/smp_affinity
echo 1 > /proc/irq/53/smp_affinity
#assign 3 tcl completions to 3 CPUs
echo 4 > /proc/irq/73/smp_affinity
echo 2 > /proc/irq/74/smp_affinity
echo 1 > /proc/irq/75/smp_affinity
echo performance > /sys/devices/system/cpu/cpufreq/policy0/scaling_governor