From 3bfe0af94592cd97a72c2317c32f62a640b11213 Mon Sep 17 00:00:00 2001 From: Tk-Glitch Date: Fri, 30 Sep 2022 15:55:55 +0200 Subject: [PATCH] Change _timer_freq defaults. While muqss keeps its 100 Hz default just like tt stays at 1000 Hz, CacULE now defaults to 2000 Hz, and all other CPU schedulers will now default to 1000 Hz. Reportedly, multiple games (mostly Unity based, but not only?) are seeing much higher CPU usage at lower tickrates resulting in degraded performance when CPU bound. 300 Hz and less are the worst offenders, but 500 and 750 Hz are also affected to some extent. CacULE is seemingly less efficient than everything else and needs 2000 Hz to keep up in those scenarios. OS (kernel, CONFIG_HZ) Min Average Max Arch Linux (linux, 300 Hz) 81% 91% 96% Arch Linux (linux-zen, 1000 Hz) 21% 25% 42% Fedora Linux (linux (Default), 1000 Hz) 20% 25% 53% 1000 Hz isn't an issue on modern systems, but older or very weak CPUs (like Atoms) which aren't used for gaming might want to use lower values. Since our main target audience is gamers, it only makes sense to change the defaults here. --- PKGBUILD | 2 +- customization.cfg | 2 +- linux-tkg-config/prepare | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/PKGBUILD b/PKGBUILD index 9182a8d..16dd89e 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -56,7 +56,7 @@ else fi pkgname=("${pkgbase}" "${pkgbase}-headers") pkgver="${_basekernel}"."${_sub}" -pkgrel=269 +pkgrel=270 pkgdesc='Linux-tkg' arch=('x86_64') # no i686 in here url="https://www.kernel.org/" diff --git a/customization.cfg b/customization.cfg index dba94d2..64de099 100644 --- a/customization.cfg +++ b/customization.cfg @@ -222,7 +222,7 @@ _random_trust_cpu="false" # Valid values are "none", "smt", "mc", "mc-llc"(for zen), "smp", "all" - Kernel default is "smt" _runqueue_sharing="" -# Timer frequency - "100" "500", "750" or "1000" ("2000" can be set for cacule cpu sched, and will fallback to default if set while on another schedulers) - More options available in kernel config prompt when left empty depending on selected cpusched with the default option pointed with a ">" +# Timer frequency - "100" "250" "300" "500" "750" "1000" ("2000" is available for cacule cpusched only) - More options available in kernel config prompt when left empty depending on selected cpusched with the default option pointed with a ">" (2000 for cacule, 100 for muqss and 1000 for other cpu schedulers) _timer_freq="" # Default CPU governor - "performance", "ondemand", "schedutil" or leave empty for default (schedutil) diff --git a/linux-tkg-config/prepare b/linux-tkg-config/prepare index ebd1f31..7dd05bb 100644 --- a/linux-tkg-config/prepare +++ b/linux-tkg-config/prepare @@ -1257,14 +1257,14 @@ _tkg_srcprep() { typeset -A _default_timer_frequencies_index _default_timer_frequencies_index=( - ["pds"]="3" + ["pds"]="5" ["muqss"]="1" - ["cacule"]="5" + ["cacule"]="6" ["tt"]="5" - ["upds"]="3" - ["cfs"]="3" - ["bmq"]="3" - ["bore"]="3" + ["upds"]="5" + ["cfs"]="5" + ["bmq"]="5" + ["bore"]="5" ) if [[ -n "$_timer_freq" && ! "${_avail_timer_frequencies[*]}" =~ "$_timer_freq" ]]; then @@ -1272,7 +1272,7 @@ _tkg_srcprep() { _timer_freq="" fi - # Default to 500Hz if _timer_freq is not set + # Default to 1000Hz if _timer_freq is not set if [ -z "$_timer_freq" ]; then _default_index="${_default_timer_frequencies_index[$_cpusched]}" msg2 "Which kernel interrupt timer frequency would you like to use ?"