RHEL Performance Tuning Options
Setting tuning options can be complicated, so RedHat Enterprise Linux (RHEL) has an installable daemon,
tuned, that provides some tuning options, defined as profiles, to improve performance. This
tuned periodically collects data about hardware subsystems, such as disks, network I/O, and switches. Then, based on the option selected,
tuned dynamically adjusts system settings to raise or lower power consumption modes for these devices on your system.
|For Azul Zulu Prime Builds of OpenJDK (Azul Zulu Prime JVM), lower power consumption modes are detrimental to performance because if a core goes to sleep and the Garbage Collector or application has a thread that needs to run, then the cost of 'warming' up the core is expensive in time as the cache gets loaded and the pipeline is filled, etc.
tuned profiles that might be useful with your Azul Zulu Prime JVM installation:
This is a server profile for typical throughput performance tuning. It disables
ktunepower saving mechanisms, enables sysctl settings that improve the throughput performance of your disk and network I/O, and switches to the deadline scheduler.
This is a server profile for typical low-latency performance tuning that can reduce RHEL jitter caused by the OS. It disables
ktunepower saving mechanisms and enables sysctl settings that improve the latency performance of your network I/O.
latency-performance profile on RHEL can improve the max response time, depending upon the application running on Azul Zulu Prime JVM, by several (maybe 10s) of msec compared to to the
tuned default profile.
You can set and un-set these profiles with
tuned-adm. The profiles are implemented with the
tuned package sets up a sample configuration file at /etc/tuned.conf and activates the default profile. The default power-saving profile has the lowest impact on power saving of the available profiles. It only enables CPU and disk
tuned-utils adds following dependencies on a standard installation:
Refer to your RHEL distribution for the
tunedpackage and documentation on using
tuned. It is available with several RHEL distributions, including RHEL 6, CentOS 6, and Fedora.
tunedpackage and its associated systemtap scripts with the command:# yum install tuned
To use the
tuned. At the command prompt, type:# chkconfig tuned on
tuned. At the command prompt, type:# service tuned start
tunedprofiles. At the command prompt, type:# tuned-adm list
The system response is:Available profiles: - default - desktop-powersave - latency-performance - laptop-ac-powersave - server-powersave - laptop-battery-powersave - throughput-performance - enterprise-storage Current active profile: default
The profiles are implemented through the
Enable the desired profile. At the command prompt, type:# tuned-adm profile <profile_name>
For example:# tuned-adm profile latency-performance Calling '/etc/ktune.d/tunedadm.sh stop': [ OK ] Stopping tuned: [ OK ] Switching to profile 'latency-performance' Applying ktune sysctl settings: /etc/ktune.d/tunedadm.conf: [ OK ] Calling '/etc/ktune.d/tunedadm.sh start': [ OK ] Applying sysctl settings from /etc/sysctl.conf
tuned has additional options that you can use when you run it manually. The available options are:
tunedas a daemon instead of in the foreground.
Uses a configuration file with the specified name and path, for example:--conffile=/etc/tuned2.conf
The default is
Uses the highest level of logging.
tuned every time the machine boots, at the command prompt, type:
# chkconfig tuned on