Skip to main content

How to manage tuning profiles in Linux

Use Tuned to monitor your Linux system and optimize its performance for specific workloads.

Photo by Boris Hamer on Pexels

Tuned is a Linux feature that monitors a system and optimizes its performance under certain workloads. Tuned uses profiles to do this. A profile is a set of rules that defines certain system parameters such as disk settings, kernel parameters, network optimization settings, and many other aspects of the system.

Tuned is a way to put optimization settings together in a single file and apply them to the system. It comes with some default profiles that you can apply statically or dynamically.

  • To apply a profile statically, you select a profile based on the workload. The system uses this selection until you manually switch to a different profile. Static profiles are enabled by default on Red Hat Enterprise Linux (RHEL).
  • The dynamic option changes profiles based on the live activity data from monitored system components, ensuring optimal performance.

Install Tuned

Tuned is installed by default on RHEL systems. If it's not installed, use the following command to install, start, and enable Tuned:

[server]$ dnf install -y tuned
[server]$ systemctl enable --now tuned

NOTE: You can install additional Tuned profiles for workloads not captured in the default profiles. Search for tuned-profiles in your repository and install them like this:

[server]$ dnf search tuned-profiles
[server]$ dnf install -y tuned-profiles-mssql tuned-profiles-oracle

Tuned comes with a frontend for interacting with the tuneD daemon called tuned-adm.

[ Get the free Linux commands cheat sheet. ] 

List Tuned profiles

To list all available Tuned profiles on your system:

[server]$ tuned-adm list
Available profiles:
- accelerator-performance     - Throughput performance based tuning with disabled higher latency STOP states
- balanced                    - General non-specialized tuned profile
- desktop                     - Optimize for the desktop use-case
- hpc-compute                 - Optimize for HPC compute workloads
- intel-sst                   - Configure for Intel Speed Select Base Frequency
- latency-performance         - Optimize for deterministic performance at the cost of increased power consumption
- network-latency             - Optimize for deterministic performance at the cost of increased power consumption, focused on low latency network performance
- network-throughput          - Optimize for streaming network throughput, generally only necessary on older CPUs or 40G+ networks
- optimize-serial-console     - Optimize for serial console use.
- powersave                   - Optimize for low power consumption
- throughput-performance      - Broadly applicable tuning that provides excellent performance across a variety of common server workloads
- virtual-guest               - Optimize for running inside a virtual guest
- virtual-host                - Optimize for running KVM guests
Current active profile: virtual-guest

To display only the currently active profile, use:

[server]$ tuned-adm active
Current active profile: virtual-guest

Tuned can also recommend the most suitable profile for your system. To use this feature, type:

[server]$ tuned-adm recommend

Activate and use profiles

To activate a profile, enter:

[server]$ tuned-adm profile <profile>

For example, to activate the Oracle profile, use:

[server]$ tuned-adm profile oracle

To view the current active Tuned profile on your system, use:

[server]$ tuned-adm active
Current active profile: oracle

To verify that the Tuned profile is active and applied:

$ tuned-adm verify
Verification succeeded, current system settings match the preset profile. See tuned log file ('/var/log/tuned/tuned.log') for details.

Wrap up

Tuned is a useful default setting for RHEL systems. Sysadmins can use the static profiles to define specific performance parameters or allow the system to switch profiles dynamically depending on the existing workload. Tuned also suggests profiles. The tuned-adm command offers several administrative subcommands to help optimize server performance.

Topics:   Certification   Linux  
Author’s photo

Evans Amoany

I work as Unix/Linux Administrator with a passion for high availability systems and clusters. I am a student of performance and optimization of systems and DevOps. I have passion for anything IT related and most importantly automation, high availability, and security. More about me

Try Red Hat Enterprise Linux

Download it at no charge from the Red Hat Developer program.