Read the docstrings using ASTs instead of
importing the modules; this prevents the
need to install TuneD dependencies when
just building the docs (e.g., in Github Pages).
TuneD has a great mechanism for profile recommendation that
can be easily configured without modifying the source code.
However, when used together with tuned-ppd, the daemon initially
selects the default profile, ignoring potentially better
recommendations.
These changes add a request for TuneD’s
recommended profile when no base_profile has been set previously.
Signed-off-by: Aleksandr Denisov <den225900@gmail.com>
When reapply_sysctl=1 (default), TuneD re-applies all system sysctl
settings after profile switches. This breaks Kubernetes overlay
networking because CNI plugins set net.ipv4.ip_forward=1 at runtime,
which gets overwritten by static /etc/sysctl.d/ files.
Add reapply_sysctl_exclude config option to protect specific sysctls
from reapplication while maintaining backward compatibility. Supports
shell-style wildcards via fnmatch.
Example config for Kubernetes:
reapply_sysctl_exclude = net.ipv4.ip_forward, net.ipv6.conf.*.forwarding
Fixes: #816
Signed-off-by: Matthew Mattox <mmattox@support.tools>
Commit 068928e ("Add support for controlling amd-pstate core
performance boost") started setting the newly-introduced `boost`
parameter in the balanced and powersave profiles, but forgot to do the
same in the performance profiles. The net result was that transitioning
directly from the powersave profile to a performance profile would leave
boosting disabled.
Fix this by setting boost=1 explictly in all performance-oriented
profiles (i.e., those with a min_perf_pct of 100).
Fixes: 068928e ("Add support for controlling amd-pstate core performance boost")
Apply specific kernel network tuning parameters to the OpenShift profile
(/profiles/openshift/tuned.conf) to support high bandwidth-delay product links.
The following TCP settings are added:
net.ipv4.tcp_notsent_lowat=131072: Sets tcp_notsent_lowat to a value intended to balance throughput and latency while limiting total socket memory usage.
net.ipv4.tcp_slow_start_after_idle=0: Disables slow start after a connection has been idle, allowing immediate maximum throughput upon resuming data transfer.
net.ipv4.tcp_rmem="4096 131072 16777216": Increases the maximum TCP receive buffer size to improve performance on high-bandwidth-delay product connections.
net.ipv4.tcp_wmem="4096 16384 16777216": Increases the maximum TCP send buffer size for similar reasons.
These changes are based on work done by Cloudflare for improving TCP
performance on high bandwidth-delay product links but are more conservative in adjusting rmem and wmem
Reference: https://blog.cloudflare.com/optimizing-tcp-for-high-throughput-and-low-latency/
Signed-off-by: Graham Heffern <gheffern@gmail.com>
Wrong hook directory can make the machine unbootable:
https://issues.redhat.com/browse/RHEL-119889
Also added workaround for currently non-functional systemd plugin
which doesn't include the systemd config into the initrd image.
Resolves: RHEL-40619
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
- When boost=0 is set on Intel systems with intel_pstate driver, it automatically sets no_turbo=1
Resolves: #788
Signed-off-by: Suyash Nalawade <sunalawa@redhat.com>
This makes the function output shorter which is desirable
with many CPUs when the function is used, e.g., to compute
the content of the isolcpus kernel argument.
Resolves: RHEL-75751