Intel® Ethernet 800 Series
Linux Performance Tuning Guide
Accelerated Receive Flow Steering (aRFS)
Previous generation Intel® Ethernet 700 Series adapters relied on Intel® Ethernet Flow Director application-targeted routing, which was enabled by default to direct these flows. For 800 Series devices, using community-supported aRFS technology allows for better coexistence with other kernel flow-steering features, such as XPS.
If you want all network traffic and application processing restricted to a specific set of CPUs, aRFS can ensure that packets destined for your application are routed to the queues serviced by the same CPU as the application. However, in the default configuration, all incoming received packets are distributed by RSS to any active receive queue.
Intel recommends that you run the set_irq_affinity script prior to enabling aRFS on your interface.
- To run the set_irq_affinity script from the ice source package, use this command:
<path-to-ice-package>/scripts/set_arfs -s flow_entries eth1 <eth2> <eth3> The flow_entries value is the number of entries in the global flow table. A good value to start with is 16384. This value can be adjusted to handle the expected workload. The flow_entries value is divided by the number of receive queues enabled on the port. By default, this number is equal to the number of cores in your platform.
For manual configuration examples of aRFS, refer to the ice driver README file.