11–iSCSI Extensions for RDMA
Optimizing Linux Performance
155
AH0054602-00 A
Optimizing Linux Performance
Consider the following Linux performance configuration enhancements described
in this section.
Configuring CPUs to Maximum Performance Mode
Configuring Kernel sysctl Settings
Configuring IRQ Affinity Settings
Configuring Block Device Staging
Configuring CPUs to Maximum Performance Mode
Configure the CPU scaling governor to performance by using the following script
to set all CPUs to maximum performance mode:
for CPUFREQ in
/sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do [ -f
$CPUFREQ ] || continue; echo -n performance > $CPUFREQ; done
Verify that all CPU cores are set to maximum performance mode by issuing the
following command:
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
Configuring Kernel sysctl Settings
Set the kernel sysctl settings as follows:
sysctl -w net.ipv4.tcp_mem="4194304 4194304 4194304"
sysctl -w net.ipv4.tcp_wmem="4096 65536 4194304"
sysctl -w net.ipv4.tcp_rmem="4096 87380 4194304"
sysctl -w net.core.wmem_max=4194304
sysctl -w net.core.rmem_max=4194304
sysctl -w net.core.wmem_default=4194304
sysctl -w net.core.rmem_default=4194304
sysctl -w net.core.netdev_max_backlog=250000
sysctl -w net.ipv4.tcp_timestamps=0
sysctl -w net.ipv4.tcp_sack=1
sysctl -w net.ipv4.tcp_low_latency=1
sysctl -w net.ipv4.tcp_adv_win_scale=1
echo 0 > /proc/sys/vm/nr_hugepages