This chapter documents the available tuning options for Onload, and the expected results.
Most of the Onload configuration parameters,
including tuning parameters, are set by environment variables exported into the
accelerated applications environment. Environment variables can be identified throughout
this manual as they begin with EF_
. All environment
variables are described in Parameter Reference or Meta Options in this guide. Examples throughout this guide assume the
use of the bash or sh shells; other shells might use different methods to export variables
into the applications environment.
- System Tuning describes tools and commands which can be used to tune the server and OS.
- Spinning, Polling and Interrupts describes how to perform standard heuristic tuning, which can help improve the application’s performance. There are also benchmark examples running specific tests to demonstrate the improvements Onload can have on an application.
- Onload Deployment on NUMA Systems describes the selection of a NUMA node, the allocation of cache memory and the affinitization of drivers, processes and interrupts.
-
Interrupt Handling for the sfc Driver describes how to tune interrupt handling on
X2-series adapters (and earlier) that use the
sfc
driver. - Performance Jitter helps you to reduce or eliminate jitter.
- Using Onload Tuning Profiles introduces you to tuning profiles that apply multiple settings.
- Benchmark Testing references some benchmarking procedures.
-
Application-Specific Tuning
introduces advanced tuning options driven from analysis of the Onload stack using
onload_stackdump
. - Worked Examples demonstrate how to achieve the application tuning goals.
Note:
Onload tuning and kernel driver tuning are subject to different
requirements. This section describes the steps to tune Onload. For details on how to tune the Solarflare kernel driver, refer to
the 'Performance Tuning on Linux' section of the Solarflare Server
Adapter User Guide, available from the NIC Software and Drivers web page.