Rate This Document
Findability
Accuracy
Completeness
Readability

Tuning the OS

OS Tuning

Item

Configuration Command

Description

Memory optimization

sysctl -w vm.zone_reclaim=0

Allows memory reclamation from other NUMA nodes.

Real-time preemption

echo -1 > /proc/sys/kernel/sched_rt_runtime_us

Disables real-time preemption.

Swap memory

sysctl -w vm.swappiness=0

Disables memory swapping.

Interrupt balancing

systemctl stop irqbalance

Disables kernel interrupt balancing.

CPU isolation

System boot parameter settings: isolcpus=0-18 nohz_full=0-18 rcu_nocbs=0-18

Isolates the CPU of the NUMA node where the LOM resides.

  1. Determine the NUMA node of the LOM based on the network port name.
  2. Check the CPU ID corresponding to the NUMA node and isolate the CPU.
    numactl -H

Hugepage memory

For details, see "Installing DPDK" in DPDK User Guide (CentOS 7.6).

  • Huge page configuration: Reserve sufficient huge pages for program running.
  • Huge page selection: If the 1 GB huge page size is supported, you are advised to select 1 GB huge page size.

BIOS Tuning

When large packets of 256 bytes or larger are forwarded, four ports forward packets at full speed. You can change the value of Max Payload Size of PCI data packets to improve the PCI bus bandwidth utilization. You are advised to change the value to the maximum value supported by the current device. The method is as follows:

  1. On the BIOS screen, choose BIOS > Advanced > PCIe Config > CPU 0 PCIE Configuration > CPU 0 Pcie - Port 0.

  2. Change the value of Max Payload Size to the maximum value supported by the current device.