Last modified 3 weeks ago Last modified on 07/08/15 06:05:21


A tool that performs monitoring and adaptive configuration of the system according to selected profile.


Quick Start Guide

After installing the package you simply need to start the tuned service. If systemd is used you can use:

# systemctl start tuned.service

You can also automatically start it during system startup. If systemd is used, you can enable the automatic start the following way:

# systemctl enable tuned.service

There are various profiles optimized for powersave, performance and virtual hosts/guests. You can view all available profiles by:

# tuned-adm list

The default is balanced profile, if you want to switch to e.g. powersave profile use:

# tuned-adm profile powersave

This settings is persistent across reboots.

Profiles contains various sysctl/sysfs settings and optionally a script that is run on profile activation/deactivation. This is called static tuning. We try to keep the database of tunings up-to-date with the latest kernels. The profiles also contain settings for various tuned plugins that tune the system dynamically. Each plugin can connect to various sensors. Currently there are plugins for CPU, disk, ethernet and FSB. For example the ethernet plugin change the ethernet speed according to previous network load.

System profiles are located in /usr/lib/tuned. You can create your own profiles that can also include and override settings from system profiles. Your custom profiles can be put into /etc/tuned, they have higher priority in case of conflict. For details see man page of tuned.conf.

PowerTOP Support

You can create your own profiles from PowerTOP suggestions. For example if you want to create profile my-profile that will implement all PowerTOP suggestions that are relevant on your system run:

# powertop2tuned my-profile

This command will create new profile in /etc/tuned/my-profile and will include settings from your previous profile. To be safe all tunings suggested by PowerTOP are initially disabled. You can selectively enable them by going through /etc/tuned/my-profile/ and uncommenting the appropriate lines. You can switch to this new profile by:

# tuned-adm profile my-profile

Dynamic Tuning & Troubleshooting

Tuned supports dynamic tuning, which can dynamically tune your hardware / kernel settings according to current system utilization. The feature is meant as a helper for cases, where is no kernel auto-tuning supported / available (yet). It is experimental feature, still under development and currently very limited. It is by default enabled. If you don't like it you can globally disable it in /etc/tuned/tuned-main.conf by setting:

 dynamic_tuning = 0

Or if the particular plugin is causing trouble to you, e.g. you don't like the network plugin changing the interface speed according to network utilization in the powersave profile, you can disable such plugin by customizing the profile. E.g. to disable the mentioned network plugin in the powersave profile you can do the following:

# mkdir /etc/tuned/custom-powersave && cat << :EOF > /etc/tuned/custom-powersave/tuned.conf


Than you can select / activate your custom profile by the following command:

# tuned-adm profile custom-powersave

Full Documentation

Up-to-date tuned documentation can be found in the Fedora Power Management Guide:


Latest release (2015-07-05):

tuned-2.5.0 (SHA-1: d0108858167cf06f43cdae975966b6328f198a65)

Older releases


Noticeable changes since previous release (for full changes see git log):

  • add tuned-adm verify command for verification if all settings from profile was applied (rhbz#1212836)
  • add variables support to profiles / scripts (rhbz#1225124)
  • add support for calling built-in functions when expanding variables, built-in functions can be provided by function plugins, add some built-in functions for unit conversion (rhbz#1225135)
  • add support for no daemon mode (rhbz#1068663)
  • add oracle tuned profile (rhbz#1196298)
  • add tuned profile for RHEL-RT (rhbz#1228801)
  • add tuned profiles for RHEL-NFV (rhbz#1228803)
  • plugin_scheduler: added support for runtime tuning of processes using perf (rhbz#1148546)
  • plugin_sysfs: add glob support (rhbz#1212831)
  • plugin_net: add support for ethtool -C (rhbz#1152539)
  • plugin_net: add support for ethtool -K (rhbz#1152541)
  • plugin_bootloader: add support for calculation of values for the kernel command line (rhbz#1191595)
  • tuned-adm: fix bash completions (rhbz#1207668)
  • plugin_bootloader: do not install tuned kernel command line to rescue kernels (rhbz#1223864)
  • add support for changing elevators on xvd* devices (Amazon EC2) (rhbz#1170152)
  • do not change settings of transparent hugepages if set in kernel cmdline (rhbz#1189868)

Changelog for all releases

GIT repository

$ git clone git://

Browse the GIT repository from your WWW browser

Here in the Trac Browser or on


Mailing list

IRC channel

  • #fedora-power AT freenode


  • Jaroslav Škarvada <jskarvad AT>