2.5.2. Tuned-adm
Often, a detailed audit and analysis of a system can be very time consuming and might not be worth the few extra watts you might be able to save by doing so. Previously, the only alternative was simply to use the defaults. Therefore, Red Hat Enterprise Linux 6 includes separate profiles for specific use cases as an alternative between those two extremes, together with the tuned-adm tool that allows you to switch between these profiles easily at the command line. Red Hat Enterprise Linux 6 includes a number of predefined profiles for typical use cases that you can simply select and activate with the
tuned-adm
command, but you can also create, modify or delete profiles yourself.
To list all available profiles and identify the current active profile, run:
tuned-adm list
To only display the currently active profile, run:
tuned-adm active
To switch to one of the available profiles, run:
tuned-adm profile profile_name
Example 2.4. Switching to the server-powersave profile
tuned-adm profile server-powersave
To disable all tuning:
tuned-adm off
When you first install tuned, the
default
profile will be active. Red Hat Enterprise Linux 6 also includes the following predefined profiles:
- default
- The default power-saving profile. It has the lowest impact on power saving of the available profiles and only enables CPU and disk plugins of tuned.
- desktop-powersave
- A power-saving profile directed at desktop systems. Enables ALPM power saving for SATA host adapters (refer to Section 3.8, “Aggressive Link Power Management”) as well as the CPU, Ethernet, and disk plugins of tuned.
- server-powersave
- A power-saving profile directed at server systems. Enables ALPM powersaving for SATA host adapters, disables CD-ROM polling through HAL (refer to the hal-disable-polling man page) and activates the CPU and disk plugins of tuned.
- laptop-ac-powersave
- A medium-impact power-saving profile directed at laptops running on AC. Enables ALPM powersaving for SATA host adapters, WiFi power saving, as well as the CPU, Ethernet and disk plugins of tuned.
- laptop-battery-powersave
- A high-impact power-saving profile directed at laptops running on battery. It activates all power saving mechanisms from the previous profiles plus it enables the multi-core power-savings scheduler for low wakeup systems and makes sure that the
ondemand
governor is active and that AC97 audio power-saving is enabled. You can use this profile to save the maximum amount of power on any kind of system, not only laptops on battery power. The tradeoff for this profile is a noticeable impact on performance, specifically latency of disk and network I/O. - spindown-disk
- A strong power-saving profile directed at machines with classic hard disks. It enables aggressive disk spin-down by increasing disk writeback values, lowering disk swappiness, and disabling log syncing. All partitions are remounted with a
noatime
option. All tuned plugins are disabled. - throughput-performance
- A server profile for typical throughput performance tuning. It disables tuned and ktune power saving mechanisms, enables sysctl settings that improve the throughput performance of your disk and network I/O, and switches to the deadline scheduler. CPU governor is set to
performance
. - latency-performance
- A server profile for typical latency performance tuning. This profile disables dynamic tuning mechanisms and transparent hugepages. It uses the
performance
governer for p-states throughcpuspeed
, and sets the I/O scheduler todeadline
. Additionally, in Red Hat Enterprise Linux 6.5 and later, the profile requests acpu_dma_latency
value of1
. In Red Hat Enterprise Linux 6.4 and earlier,cpu_dma_latency
requested a value of0
. - enterprise-storage
- A server profile to improve throughput performance for enterprise-sized server configurations. This switches to the deadline scheduler and disables certain I/O barriers, dramatically improving throughput.
- virtual-guest
- This profile is optimized for virtual machines. It is based on the
enterprise-storage
profile, but also decreases the swappiness of virtual memory. This profile is available in Red Hat Enterprise Linux 6.3 and later. - virtual-host
- Based on the
enterprise-storage
profile, this profile decreases the swappiness of virtual memory and enables more aggressive writeback of dirty pages. Non-root and non-boot file systems are mounted withbarrier=0
. Additionally, as of Red Hat Enterprise Linux 6.5, the kernel.sched_migration_cost parameter is set to 5 milliseconds. Prior to Red Hat Enterprise Linux 6.5, kernel.sched_migration_cost used the default value of 0.5 milliseconds - oracle
- A profile optimized for Oracle databases loads based on
throughput-performance
profile. It additionaly disables transparent huge pages and modifies some other performance related kernel parameters. This profile is provided by tuned-profiles-oracle package. It is available in Red Hat Enterprise Linux 6.8 and later.
Note
There may be more product specific or 3rd party Tuned profiles available. Such profiles are usually provided by separate RPM packages.
All the profiles are stored in separate subdirectories under
/etc/tune-profiles
. Thus /etc/tune-profiles/desktop-powersave
contains all the necessary files and settings for the desktop-powersave
profile. Each of these directories contains up to four files:
tuned.conf
- the configuration for the tuned service to be active for this profile.
sysctl.ktune
- the sysctl settings used by ktune. The format is identical to the
/etc/sysconfig/sysctl
file (refer to the sysctl and sysctl.conf man pages). ktune.sysconfig
- the configuration file of ktune itself, typically
/etc/sysconfig/ktune
. ktune.sh
- an init-style shell script used by the ktune service which can run specific commands during system startup to tune the system.
Example 2.5. Creating a New Profile
The easiest way to start a new profile is to copy an existing one and edit the configuration options. The
laptop-battery-powersave
profile contains a very rich set of tunings already and is therefore a useful starting point.
- Copy the whole directory to the new profile name:
cp -a /etc/tune-profiles/laptop-battery-powersave/ /etc/tune-profiles/myprofile
- Modify any of the files in the new profile to match your personal requirements. If you require the detection of CD changes, you could disable that optimization by commenting out the appropriate line in the ktune.sh script:
# Disable HAL polling of CDROMS # for i in /dev/scd*; do hal-disable-polling --device $i; done > /dev/null 2>&1