1
0
Fork 0
Commit graph

216 commits

Author SHA1 Message Date
P J P
6407ca44c6 profiles: improve realtime verify functions
tuned(8) realtime-virtual-{host|guest} profiles set Kernel and
KVM module parameters via script.sh plugin. These parameters are
to be verified in a verify() function, invoked by tuned-adm verify
command.

This patch updates verify() functions to validate KVM module
parameters.

It moves kernel parameters to the tuned.conf file under the
[sysfs] & [sysctl] plugin sections. And removes call to
disable_ksm function, no longer required.

Fixes: RHBZ#1947858
2021-05-13 15:21:48 +05:30
Nitesh Narayan Lal
c002d93b59 realtime: added support for netdev_queue_count
This allows the user to adjust the queue count for each
network device.

Also add check_net_queue_count built-in function.

The functions check if the user has specified any
queue count value or not. If no value is passed the function
returns the number of housekeeping CPUs as the queue count.

Resolves: rhbz#1846767

Signed-off-by: Nitesh Narayan Lal <nitesh@redhat.com>
2021-01-22 11:55:39 -05:00
Jaroslav Škarvada
2321625400
Merge pull request #289 from yarda/rt-entsk-plugin
Rt entsk plugin
2020-11-13 18:30:42 +01:00
alexey-mr
57efbb2ef2 Added contrail dpdk into ps_blacklist
- https://github.com/redhat-performance/tuned/issues/297
2020-10-14 11:08:15 +03:00
Jaroslav Škarvada
ba7286e375
Merge pull request #290 from kofemann/postgres-profile
added postgresql server profile
2020-08-31 08:47:15 +02:00
Tigran Mkrtchyan
f7ecad0ae0 added postgresql server profile
A new tuned profile for PostgreSQL database server.

This profile is based of information collected from various
presentations about Linux tuning at PGConf.

See: https://www.socallinuxexpo.org/sites/default/files/presentations/scale_kosmodemiansky_linux_internals.pdf

Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
2020-07-31 20:49:11 +02:00
Christophe Fontaine
bac2055e4b realtime-virtual-host profile: exclude ovs-vswitchd pmds
Like the cpu-partitioning profile, exclude all 'pmd' threads
to avoid repinning ovs-vswitchd pmds.

Resolves: rhbz#1861767

Signed-off-by: Christophe Fontaine <cfontain@redhat.com>
2020-07-29 16:44:22 +02:00
Marcelo Tosatti
8aef56287b realtime profile: use rtentsk plugin
Use rt-entsk tuned plugin and drop systemctl service usage.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2020-07-28 12:48:29 +02:00
Marcelo Tosatti
51c50a3a18 realtime-virtual-host profile: remove lapic advancement calculation
The LAPIC advancement improvement is minimal (3 or 4 us) and its
calculation has shown to be problematic under certain
scenarios (for example if qemu-kvm is not installed).

Remove it.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2020-07-22 15:17:48 +02:00
Jaroslav Škarvada
f1516f1a5b
Merge pull request #285 from yarda/ubuntu-path-fix
cpu-partitioning: do not hardcode path to mktemp
2020-07-22 10:12:00 +02:00
Jaroslav Škarvada
766dd06def
Merge pull request #283 from yarda/amd-performance-regression-fix
throughput-performance: fix performance regression on AMD
2020-07-22 10:11:11 +02:00
Jaroslav Škarvada
85f0e3297b
cpu-partitioning: do not hardcode path to mktemp
E.g. Ubuntu uses /bin/mktemp, while e.g. Fedora uses /usr/bin/mktemp.
There is probably no need to hardcode the path, so rely on the system path.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-07-03 22:45:34 +02:00
Jaroslav Škarvada
f511ad5d48
throughput-performance: fix performance regression on AMD
It turned out that disablement of the numa_balancing could result in
upto 20% performance drop on some loads.

Related: rhbz#1746957

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-06-30 15:39:18 +02:00
Luis Bolinches
fb06eefe62 Update Spectrum Scale ECE profile
Signed-off-by: Luis Bolinches <luis.bolinches@fi.ibm.com>
2020-06-22 10:53:08 +03:00
Jaroslav Škarvada
af9e64a213
Merge pull request #276 from yarda/marvell-amd
Arch specific tuning for Marvell ThunderX and AMD
2020-06-05 18:29:56 +02:00
Jaroslav Škarvada
0bdf0a2227
Merge pull request #274 from olysonek/irqbalance-plugin
Add irqbalance plugin
2020-06-05 18:29:07 +02:00
Ondřej Lysoněk
0509247f8b realtime: Use the irqbalance plugin
Use the new irqbalance plugin instead of a script to set up
irqbalance.

I'm placing the 'irqbalance' instance before the 'script' instance so
that it's executed at the same time as the script, however I don't
think the 'irqbalance' instance needs to be ordered in any specific
way and could be placed almost anywhere.

Resolves: rhbz#1784645

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2020-06-05 10:23:42 +02:00
Ondřej Lysoněk
462df2610c cpu-partitioning: Use the irqbalance plugin
Use the new irqbalance plugin instead of a script to set up
irqbalance.

Note that I'm not setting priority for the 'irqbalance' instance,
whereas the 'script' instance has a priority of 5. However, this was
added just for initrd image generation in commit 843dc8cf5f
and I don't think the irqbalance instance needs to be ordered in any
specific way.

Resolves: rhbz#1784645

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2020-06-05 10:23:42 +02:00
Jaroslav Škarvada
f87263ae20
throughput-performance: added arch specific tuning for AMD
Resolves: rhbz#1746957

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-06-04 17:17:30 +02:00
Jaroslav Škarvada
5041abf70a throughput-performance: added arch specific tuning for Marvell ThunderX
Resolves: rhbz#1746961

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-06-04 17:15:56 +02:00
Jaroslav Škarvada
8fd6b5e220
Added new profile optimize-serial-console
Profile which tunes down I/O activity to the serial console by reducing the
printk value. This should make the serial console more responsive.
This profile is intended to be used as an overlay on other
profiles (e.g. throughput-performance profile), example:
 # tuned-adm profile throughput-performance optimize-serial-console

Also minor fixes to the man page quoting.

Resolves: rhbz#1840689

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-05-28 15:26:39 +02:00
Jaroslav Škarvada
491d133495
Merge pull request #261 from bolinches/master
Spectrum Scale ECE profile
2020-05-11 17:29:39 +02:00
Luis Bolinches
7ce1772a78 Spectrum Scale ECE profile
Signed-off-by: Luis Bolinches <luis.bolinches@fi.ibm.com>
2020-05-11 12:22:39 +03:00
Jaroslav Škarvada
621464599b
network-latency: used unique cmdline suffix
related: rhbz#1816168

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-05-07 14:16:00 +02:00
Jaroslav Škarvada
0cb964ec26
Merge pull request #260 from jmencak/isolate_managed_irq-inherit
Enable isolate_managed_irq to be defined in child profiles.
2020-04-29 17:29:17 +02:00
Jaroslav Škarvada
398f943f70
Merge pull request #250 from olysonek/disable-timer-migration
cpu-partitioning: Disable kernel.timer_migration
2020-04-29 16:58:00 +02:00
Jaroslav Škarvada
0a001186e6
Merge pull request #243 from jmencak/irqbalance-restart
Try-restart irqbalance service upon writing /etc/sysconfig/irqbalance
2020-04-16 15:56:14 +02:00
Jiri Mencak
8d5f5ec4b1 Try-restart irqbalance service upon writing /etc/sysconfig/irqbalance
Relates to: rhbz#1784645

Signed-off-by: Jiri Mencak <jmencak@users.noreply.github.com>
2020-04-16 15:19:49 +02:00
Jiri Mencak
c930eef0af Enable isolate_managed_irq to be defined in child profiles.
Signed-off-by: Jiri Mencak <jmencak@users.noreply.github.com>
2020-04-16 14:09:55 +02:00
Jaroslav Škarvada
5ed61ce394
realtime: added conditional support for managed_irq
Also added regex_search_ternary built-in function.

It takes arguments in the following form:
  STR1, REGEX, STR2, STR3

If REGEX matches STR1 (re.search is used), STR2 is returned,
if it doesn't match STR3 is returned.

Example:
[variables]
foo=Y
bar=${f:regex_search_ternary:${foo}:\b[y,Y,1,t,T]\b:foo:bar}

It will result in the 'foo' string stored in the '${bar}' variable.

Resolves: rhbz#1797025

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-03-23 14:43:47 +01:00
Ondřej Lysoněk
aa859eecdd cpu-partitioning: Disable kernel.timer_migration
Reportedly, it's no longer needed.

Resolves: rhbz#1797629

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2020-02-26 17:42:12 +01:00
Jaroslav Škarvada
20a71af333
profiles: renamed sst profile to intel-sst
Also updated intel-sst profile manual page describing its usage.

Related: rhbz#1743879

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-02-11 17:44:06 +01:00
Ondřej Lysoněk
9535680992 Add accelerator-performance profile
Resolves: rhbz#1795604

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2020-02-06 17:55:21 +01:00
Jaroslav Škarvada
cc11660689
realtime-virtual-host: added ncat requirement
resolves: rhbz#1779117

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2020-01-13 21:29:00 +01:00
Ondřej Lysoněk
0eb0c6bc7f profiles: Make sure variables are defined before use
Make sure the isolated_cores and no_balance_cores variables are
defined before any of the variables that use them are defined. This
enforces a certain ordering of variable expansions so that child
profiles can set the variables directly in the profile (tuned.conf),
e.g.:

[main]
include=cpu-partitioning

[variables]
isolated_cores=3

Resolves: rhbz#1781664

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2020-01-06 15:50:06 +01:00
Ondřej Lysoněk
251a9e89d3 oracle: Turn off NUMA balancing
Turn off NUMA balancing, according to feedback from the performance
team.

Resolves: rhbz#1782233

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-12-12 17:41:38 +01:00
Jaroslav Škarvada
c374ca62e4
Merge pull request #234 from prarit/sst_v1
Add Intel Speed Select Technology (SST) Profile
2019-12-11 18:09:39 +01:00
Prarit Bhargava
bcdb24862e Add Intel Speed Select Technology (SST) Profile
Intel's new Speed Select Technology (SST) is a process power management
technology introduced by Intel that allows for throughput and per-core
performance configurations and optimizations such as allowing for
prioritization of workloads on specific cores by sacrificing performance
on other cores.

Intel has released several CascadeLake processors, commonly referred to
as CascadeLake-N, with this technology and will introduce further SST
related technologies in the next few years.

These new technologies require the disabling of the intel-pstate driver
configuration in tuned as it may interfere with the user chosen per-core
configurations of SST.

Add a new SST profile to tuned for general use.

Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Joe Mario <jmario@redhat.com>
2019-12-11 08:52:52 -05:00
Jaroslav Škarvada
076efbfc45
Merge pull request #233 from olysonek/update-latency-performance
latency-performance: Update sysctl tunings
2019-12-11 14:33:31 +01:00
Ondřej Lysoněk
7a70fabb4c latency-performance: Update sysctl tunings
Update sysctl tunings in the latency-performance profile based on
feedback from the performance team.

Resolves: rhbz#1779759

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
2019-12-09 13:08:01 +01:00
Jaroslav Škarvada
52156a00b5
sap-hana: updated tuning
Made sap-hana profile standalone.

Resolves: rhbz#1779821

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-12-06 16:43:08 +01:00
Marcelo Tosatti
785128af2d realtime profile: fix nowatchdog kernel command line option
The correct string for the option is "tsc=nowatchdog", and
not "nowatchdog".

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-11-13 21:01:43 +01:00
Marcelo Tosatti
0facf2ed5e realtime profile: add "nowatchdog" kernel command line option
This option disables the TSC clocksource watchdog
for isolated CPUs (which avoids interruptions
by the per-CPU clocksource watchdog timer).

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-11-01 11:00:28 +01:00
Jaroslav Škarvada
252bd91ed0
latency-peformance: backup latency requirement increased to 3 us
In the kernel table of exit latencies of various CPUs the worst
exit latency for C1 seems to be 3 us, so increase the backup
value latency requirement to 3 us to match the worst C1 exit
latency.

Related: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-09-24 09:00:41 +02:00
Jaroslav Škarvada
e40b50a498
Used C-states in latency specification
For sap-hana and virtual-host profiles used state3 (i.e. usually C3)
C-state in latency specification instead of the hardcoded value 70 us,
i.e.:
force_latency=cstate.id:3|70

Also dropped obsoleted TODO note from the plugin_cpu.

Related: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-16 18:13:02 +02:00
Jaroslav Škarvada
0ec40e0360
plugin_cpu: latency can be now specified as cstate
Maximal latency can be now specified multiple ways:
- directly in usec (this is the same as before), e.g. for 10 us:
  force_latency = 10
- as an ID of maximal cstate allowed, e.g. for the kernel state1:
  force_latency = cstate.id:1
- as a name (case sensitive) of maximal cstate allowed, e.g. for the state named C1:
  force_latency = cstate.name:C1

It is also possible to specify multiple fallback values separated by '|', e.g.:
  force_latency = cstate.name:C6|cstate.id:4|10

This will try to obtain latency of cstate named C6, if it fails (e.g.
there is no such cstate), it will try kernel state4 and if it also fails
it finally fallbacks to 10 us.

This commit also changes force_latency settings of latency-performance
profile to:
  force_latency=cstate.id:1|1

I.e. it tries kernel state1 and fallbacks to 1 us.

Resolves: rhbz#1737628

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-08-14 16:34:17 +02:00
Marcelo Tosatti
25089296f3 realtime-virtual profiles: enable ktimer_lockless_check if available
RHEL will include a backport of the kernel patch
"do not raise timer softirq unconditionally (spinlockless version)"
(https://lkml.org/lkml/2019/4/15/1215), but disabled by default.

Enable it in realtime-virtual-{host/guest} profiles as it decreases
maximum cyclictest latency.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2019-07-18 10:57:33 +02:00
Peter Xu
7e93b6948f realtime: Apply irqbalance tunes too in realtime profiles
Realtime profiles require to restrict irqbalance too.  Apply them to
the realtime profile so that realtime-virtual-{host|guest} can benefit
from that too.

Signed-off-by: Peter Xu <peterx@redhat.com>
2019-07-10 13:09:03 +08:00
Peter Xu
4a8e64994e cpu-partitioning: Introduce irqbalance helpers and use
Provide irqbalance_banned_cpus_{setup|clear} for tuning irqbalance.
Use them in cpu-partitioning.

Signed-off-by: Peter Xu <peterx@redhat.com>
2019-07-10 13:09:03 +08:00
Jaroslav Škarvada
9b1c045d30
realtime-virtual-host: add tsc-deadline=on to qemu cmdline
So that QEMU uses the in kernel irqchip.

Original patch provided by Luiz Capitulino <lcapitulino@redhat.com>.

Resolves: rhbz#1554458

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2019-06-10 19:11:53 +02:00