1
0
Fork 0
Commit graph

75 commits

Author SHA1 Message Date
Jaroslav Škarvada
5b9cf627f1 sap-hana: explicitly setting kernel.numa_balancing = 0 for better performance
Resolves: rhbz#1355768

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-07-12 16:49:10 +02:00
Jaroslav Škarvada
b85e9c2180 realtime: changed assertion text to be more clear
Related: rhbz#1264128

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-06-17 14:16:57 +02:00
Jaroslav Škarvada
07d63a8fb0 realtime: added assertion to check whether isolated_cores contains present CPUs
Resolves: rhbz#1264128

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-06-17 14:12:01 +02:00
Jaroslav Škarvada
099ae05b74 realtime: fixed kernel.sched_rt_runtime_us to be -1
kernel.sched_rt_runtime_us - a global limit on how much time realtime
scheduling may use. A run time of -1 specifies runtime == period, ie. no limit.

Resolves: rhbz#1346715

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-06-15 21:36:44 +02:00
Jaroslav Škarvada
2d89b31cf9 realtime-virtual-host/guest: added rcu_nocbs kernel boot parameter
This doesn't have effect on kernels build with CONFIG_RCU_NOCB_CPU_ALL=y.

Resolves: rhbz#1334479

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-06-15 15:56:26 +02:00
Luiz Capitulino
32ef5d8db0 realtime: disable timer migration
It was found during code review that the kernel always try to
migrate timers away from idle CPUs to busy CPUs. Real-time
CPUs running dpdk polling threads for example, are busy so
they are a great candidate to receive timers from idle CPUs
(see get_nohz_timer_target() in the kernel sources).

It is not clear how this problem can affect real-time
applications and KVM-RT. However, for real-time and
high-performance the best thing is for a timer to always
fire in the CPU where it was created.

Resolves: rhbz#1323283

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2016-04-04 10:36:53 +02:00
Jaroslav Škarvada
52f2cc4ad7 atomic: increase number of inotify watches
Resolves: rhbz#1322001

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-03-29 23:48:49 +02:00
Luiz Capitulino
de021288a5 realtime-virtual-host: don't delete modprobe file on start()
We create the /etc/modprobe.d/kvm.rt.tuned.conf file at
every boot. However, there's nothing that guarantees that
the kvm module will be loaded after tuned. Indeed, it's
possible to reproduce a race where the kvm module is loaded
before tuned. When this happens, the kvm module will be
loaded with incorrect parameters as the kvm.rt.tuned.conf
file doesn't exist.

The solution to this problem is to create the kvm.rt.tuned.conf
file only if it doesn't exist and delete it when changing
profiles.

Resolves: rhbz#1292117

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>

 profiles/realtime-virtual-host/script.sh | 26 +++++++++++++++++---------
 1 file changed, 17 insertions(+), 9 deletions(-)
2016-01-11 11:13:08 +01:00
Jaroslav Škarvada
671cd73a57 plugin_script: stop action gets hint why it is called
Upon stop action the script is called the following way:
  script.sh stop [$HINT]

$HINT is not used if the stop is result of tuned
shutdown. $HINT is set to "profile_switch" if the stop is
result of profile switch.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-01-08 18:29:52 +01:00
Jaroslav Škarvada
c24e2ea0ca Added support for 'summary' and 'description' of profiles
Added new tuned-adm functionality 'profile_info'. It has optional parameter
'profile_name'. If called without parameter, active profile is used.
It outputs name of the profile it is querying, profile summary, and profile
description. If there is no profile summary or description available it
outputs empty string(s).

Extended tuned-adm 'list' functionality. It now displays profile summary
in the list (if available).

Added summary to profiles.

Extended D-Bus API to support the new feature and for better Cockpit support:
 - Added 'profile_info' method. It gets profile_name argument and it queries
   the requested profile for information. If profile_name is empty string it
   queries the active/selected profile. It returns tuple of the following
   format (status, profile_name, summary, description), where status is
   boolean. If it is False, the query mechanism failed and the other fields
   don't contain valid data
 - Added 'profiles2' method. It's extension of 'profiles' method. It returns
   list of tuples. Tuples have following format:
   (profile_name, profile_summary)

Related: rhbz#1228356
Fixes: #46

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2016-01-05 11:28:25 +01:00
Jaroslav Škarvada
cb826c1e38 profiles: fixed lapic_timer_adv_ns cache
Patch provided by Luiz Capitulino <lcapitulino@redhat.com>

Resolves: rhbz#1259452

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-11-16 17:27:18 +01:00
Jaroslav Škarvada
9aeb585a63 profiles: Added nohz_full and nohz=on to realtime guest/host profiles
Resolves: rhbz#1274445

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-10-29 16:13:50 +01:00
Jaroslav Škarvada
796b4f4fd4 profiles: removed nohz_full from the realtime profile
Resolves: rhbz#1274486

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-10-29 15:23:46 +01:00
Jaroslav Škarvada
5a5986bd8b realtime: set unboud workqueues cpumask
The latest RHEL and RT kernels got support for setting the cpumask of unbound
workqueues in sysfs (https://bugzilla.redhat.com/show_bug.cgi?id=1176155).

This patch sets the unbound workqueues cpumask to the list of non-isolated
cores for the real-time profiles.

Patch from Luiz Capitulino <lcapitulino@redhat.com>

Resolves: rhbz#1259043

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-10-06 11:49:56 +02:00
Jaroslav Škarvada
239fb78992 functions: fixed restore_logs_syncing to preserve SELinux context on rsyslog.conf
Resolves: rhbz#1268901

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-10-06 11:42:46 +02:00
Marcelo Tosatti
874762b4c0 tuned-profiles-nfv: fix find-lapictscdeadline-optimal.sh for CPUS where ns > 6500
If the result of lapic-tsc-deadline kvm-unit-test continues
to decrease as ns increases, then use highest ns value.

Reported and tested by Luiz and Hai.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Resolves: rhbz#1267284
2015-10-02 12:03:31 +02:00
Jaroslav Škarvada
b6ad363186 plugins: added scsi_host plugin
This plugin handles SCSI hosts. On Linux these are also used for SATA.
Currently it only supports ALPM setting, e.g.:

[scsi_host]
devices=host0
alpm=medium_power

ALPM is set per SATA/SCSI host. If SCSI host doesn't support ALPM
(it is SATA/AHCI specific), it is skipped and message is logged into
Tuned log with 'info' loglevel.

Concurrently the ALPM settings were removed from the 'disk' plugin.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-08-24 16:16:28 +02:00
Jaroslav Škarvada
04c5222abc functions: fixed sysfs save to work with options
E.g.:
$ cat /sys/block/sda/queue/scheduler
noop [deadline] cfq

The 'save_sys' function needs to save 'deadline', not 'noop [deadline] cfq'.

Resolves: rhbz#1251507

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-08-21 16:33:19 +02:00
Jaroslav Škarvada
bd6db76cd1 profiles-nfv: fixed dependency and paths to tscdeadline_latency.flat
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-07-24 11:09:35 +02:00
Jaroslav Škarvada
b01eaf27d1 profiles: added realtime-virtual-guest/host profiles
Profiles shipped in tuned-profiles-nfv subpackage. The content was provided
by Jeremy Eder <jeder@redhat.com> and Clark Williams <williams@redhat.com>.

Resolves: rhbz#1228803

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-07-01 16:58:06 +02:00
Jaroslav Škarvada
7dcab8a180 realtime: minor formatting fix
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-29 16:37:21 +02:00
Jaroslav Škarvada
e2f86d412f plugin_vm: do not set transparent_hugepages if overridden in kernel boot cmdline
Also removed transparent_hugepages from throughput-performance profile.
Added support for 'madvise' setting of transparent_hugepages.

Resolves: rhbz#1189868

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-26 13:48:01 +02:00
Jaroslav Škarvada
8ec878cb50 realtime: fixed / simplified profile according to comments
tuna now do isolation of cores (-i)

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-23 09:15:57 +02:00
Jaroslav Škarvada
740fab40ec realtime: moved variables to /etc/tuned/realtime-variables.conf
And some minor tweaks.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-22 17:32:35 +02:00
Jaroslav Škarvada
46f1968bce profiles: added realtime
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-18 17:21:09 +02:00
Jaroslav Škarvada
446596ebdc profiles: added oracle profile
Resolves: rhbz#1196298

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-06-16 11:14:51 +02:00
Jaroslav Škarvada
d4038a7e64 plugin_script: added support for verify
Added 'verify' shell function to the 'functions' API. This
function is optional, if defined in the script, it is called
during the verification. It's return code is checked. Function
return code '0' means verification passed, other value means
failure.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-05-19 15:51:04 +02:00
Jaroslav Škarvada
65edc83801 sap-netweaver: increased vm.max_map_count to 2000000
Resolves: rhbz#1174253

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-02-27 17:47:51 +01:00
Jaroslav Škarvada
6d6d9723b6 profiles: added support for Xen VSDs
Resolves: rhbz#1159963

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-02-27 17:41:40 +01:00
Jaroslav Škarvada
59d2fac3e4 profiles: added support for direct-access storage devices (DASDs)
resolves: rhbz#1129936

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2015-02-27 11:55:43 +01:00
Jaroslav Škarvada
a4b1a50389 profiles: included sap-hana and sap-hana-vmware profiles
These profiles are performance optimized for SAP HANA loads.
There are available in tuned-profiles-sap-hana subpackage.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-09-19 17:11:44 +02:00
Jaroslav Škarvada
d01e045fbd profiles: sap profile renamed to sap-netweaver
This profile is performance optimized for running SAP NetWeaver
based applications on bare metal.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-09-18 17:31:12 +02:00
Jaroslav Škarvada
0aea276128 plugins: added atomic-host and atomic-guest profiles
Resolves: rhbz#1091977
Resolves: rhbz#1091979

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-08-27 14:20:28 +02:00
Hase, Jin
b2897d9c1c balanced: used conservative CPU governor
In my testing, balanced profile's efficiency is almost as same(*1) as
powersave profile on my server using Xeon-E5.

I think tuned should make difference between balanced profile and powersave
profile. IOW, balanced profile should show better performance and worse power
consumption than powersave profile.

One of root causes is that detailed settings of P-State and C-State are
almost same between balanced profile and powersave profile.

This patch proposes that making "balanced"'s CPU governer to be conservative.
This will make difference between balanced and powersave(*2).

[Measurement result]
 - Load testing tool
   JdbcRunner(Database Model)

 - Hardware
   12core(Xeon E5-2650L 1.80GHz)/8GB Memory/SSD 100GB/1Gbit Network
   (But I limit the number of core to "4" by BIOS because of adjusting
    CPU load)

 - Software
   kernel-3.10.0-123.el7.x86_64, tuned-2.3.0-11.el7.noarch

 - Throughput, latency and power consumption
   (power consumption is measured by ipmitool sensor)

                | Throughput |   Latency   | Power Consumption
     Profile    |   (tpm)    |   (msec)    | on Server (Watt)
 --------------------------------------------------------------
 (*1)powersave  |   8,495    |       28    |      111.2
 --------------------------------------------------------------
 (*1)balanced   |   8,340    |       29    |      111.6
 --------------------------------------------------------------
 (*2)This patch |   9,284    |       25    |      118.8
 --------------------------------------------------------------
 throughput-    |  10,464    |       25    |      128.0
 performance    |            |             |
 --------------------------------------------------------------
 latency-       |  10,911    |       23    |      133.2
 performance    |            |             |
 --------------------------------------------------------------

 - P-State and C-State(measured by turbostat)
             | CPU freq|               C-State
   Profile   |  (GHz)  | (%C0) | (%C1) | (%C3) | (%C6) | (%C7)
 --------------------------------------------------------------
 powersave   |  1.31   | 59.45 | 28.55 |  1.72 |    0  | 10.25
 --------------------------------------------------------------
 balanced    |  1.38   | 61.63 | 30.02 |  0.77 |    0  |  7.56
 --------------------------------------------------------------
 This patch  |  1.81   | 51.27 | 39.91 |  1.78 |    0  |  7.04
 --------------------------------------------------------------
 throughput- |  2.25   | 46.14 | 52.44 |  0.43 |    0  |  0.97
 performance |         |       |       |       |       |
 --------------------------------------------------------------
 latency-    |  2.30   | 48.36 | 51.64 |     0 |    0  |    0
 performance |         |       |       |       |       |
 --------------------------------------------------------------

 - CPU utilization(measured by sar)
   Profile   |  %user |  %sys  | %iowait |  %idle
 ---------------------------------------------------
 powersave   |  36.69 |  13.32 |  5.25   |  44.74
 ---------------------------------------------------
 balanced    |  38.94 |  13.88 |  4.07   |  43.12
 ---------------------------------------------------
 This patch  |  42.78 |  14.53 |  5.97   |  36.72
 ---------------------------------------------------
 throughput- |  33.51 |  12.29 |  7.14   |  47.06
 performance |        |        |         |
 ---------------------------------------------------
 latency-    |  34.58 |  11.71 |  7.89   |  45.82
 performance |        |        |         |
 ---------------------------------------------------

Signed-off-by: Jin Hase <hase.jin@jp.fujitsu.com>

1 file changed, 1 insertion(+), 1 deletion(-)
2014-07-22 12:08:28 +02:00
Jaroslav Škarvada
1d1c3a389c tuned: Added support for >, < assignment modifiers in tuned.conf
These modifiers can specify when to assign new value considering
the old value.

E.g.:
readahead=>4096

means assign readahead 4096 only if the current value of readahaed
is lower than 4096 (i.e. the readahaed will be at least 4096).

Similarly for the < operator, it will assign the value only
if the current value is higher.

The modifiers are part of the value, not part of the equality
operator, thus the following is correct:
readahead= >4096

But the following isn't correct, but will probably also work
due to the nature how the value is parsed:
readahead=> 4096

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-05-07 17:02:59 +02:00
Jaroslav Škarvada
adffbb0ca1 balanced: used medium_power ALPM policy
This policy sets the link to the second lowest power
state (PARTIAL) when there is no I/O on the disk. This
mode is designed to allow transitions in link power states
(for example during times of intermittent heavy I/O and
idle I/O) with as small impact on performance as possible.

This may save significant amount of power in idle periods
of the link, especially on laptops. E.g. on x240 the average
AC power consumption dropped from approx. 5 W to only 2.5 W.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-04-28 14:29:06 +02:00
Jaroslav Škarvada
153afc6c9f network-throughput: added new profile
Resolves: rhbz#1052421

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-02-14 13:31:21 +01:00
Jaroslav Škarvada
a195fc06fe network-latency: added new profile
Resolves: rhbz#1052418

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-02-14 13:13:14 +01:00
Jaroslav Škarvada
640e100341 latency-performance: leaving THP on its default
Resolves: rhbz#1064510

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-02-14 12:41:59 +01:00
Jaroslav Škarvada
d5aea87c0b throughput-performance: altered dirty ratios for better performance
Resolves: rhbz#1043533

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-01-07 15:38:26 +01:00
Jaroslav Škarvada
a47b0e1be7 spindown-disk: removed useless find, probably typo
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-12 14:57:01 +01:00
Jaroslav Škarvada
b31830d709 enterprise-storage: removed readahead
The readahaed is already included from the throughput-performance
profile.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-07 16:44:35 +01:00
Jaroslav Škarvada
35a3eb2398 profiles: added sap profile
fixes #38

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-06 11:51:50 +01:00
Jaroslav Škarvada
ef339e1b17 profiles: various updates according to feedback from performance team
Related: rhbz#922068

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-06 10:39:01 +01:00
Jaroslav Škarvada
1e910ae940 virtual-host: fixed kernel.sched_migration_cost_ns parameter
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-06 10:14:28 +01:00
Jaroslav Škarvada
bdcdb3072f profiles: added desktop profile
Currently it only enables autogroup scheduling:

kernel.sched_autogroup_enabled = 1

Resolves: rhbz#996723

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-05 23:27:10 +01:00
Jaroslav Škarvada
93803c074e profiles: switched from multiplies to hardcoded values
Related: rhbz#922068

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-05 23:20:12 +01:00
Jaroslav Škarvada
f26e5f58f3 profiles: not disabling barriers
Related: rhbz#922068

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-05 23:16:16 +01:00
Jaroslav Škarvada
94e383a5ed plugin_cpu: added support for intel_pstate
The following intel_pstate parameters are now supported:
  min_perf_pct
  max_perf_pct
  no_turbo

Resolves: rhbz#996722

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-11-05 22:55:38 +01:00
Jaroslav Škarvada
59e259a3ce plugin_cpu: added support for x86_energy_perf_policy
This feature is controlled by the energy_perf_bias cpu plugin
option.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2013-10-23 10:44:24 +02:00