linux57-rc-tkg: PDS and BMQ return. MuQSS is more annoying, so let's do that later.
This commit is contained in:
parent
a0c93360ed
commit
d8377b1fa2
@ -53,26 +53,22 @@ fi
|
|||||||
|
|
||||||
# CPU SCHED selector
|
# CPU SCHED selector
|
||||||
if [ -z "$_cpusched" ] && [ ! -e "$_where"/cpuschedset ]; then
|
if [ -z "$_cpusched" ] && [ ! -e "$_where"/cpuschedset ]; then
|
||||||
# plain "What CPU sched variant do you want to build/install?"
|
plain "What CPU sched variant do you want to build/install?"
|
||||||
# read -rp "`echo $' > 1.PDS\n 2.MuQSS\n 3.BMQ\n 4.CFS\nchoice[1-4?]: '`" CONDITION;
|
read -rp "`echo $' > 1.PDS\n 2.BMQ\n 3.CFS\nchoice[1-3?]: '`" CONDITION;
|
||||||
# if [ "$CONDITION" == "2" ]; then
|
if [ "$CONDITION" == "2" ]; then
|
||||||
# echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset
|
||||||
# elif [ "$CONDITION" == "3" ]; then
|
elif [ "$CONDITION" == "3" ]; then
|
||||||
# echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset
|
|
||||||
# elif [ "$CONDITION" == "4" ]; then
|
|
||||||
echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset
|
||||||
# else
|
else
|
||||||
# echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
|
||||||
# fi
|
fi
|
||||||
if [ -n "$_custom_pkgbase" ]; then
|
if [ -n "$_custom_pkgbase" ]; then
|
||||||
echo "_custom_pkgbase=\"${_custom_pkgbase}\"" >> "$_where"/cpuschedset
|
echo "_custom_pkgbase=\"${_custom_pkgbase}\"" >> "$_where"/cpuschedset
|
||||||
fi
|
fi
|
||||||
#elif [ "$_cpusched" == "muqss" ] || [ "$_cpusched" == "MuQSS" ]; then
|
elif [ "$_cpusched" == "pds" ]; then
|
||||||
# echo "_cpusched=\"MuQSS\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
|
||||||
#elif [ "$_cpusched" == "pds" ]; then
|
elif [ "$_cpusched" == "bmq" ]; then
|
||||||
# echo "_cpusched=\"pds\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset
|
||||||
#elif [ "$_cpusched" == "bmq" ]; then
|
|
||||||
# echo "_cpusched=\"bmq\"" > "$_where"/cpuschedset
|
|
||||||
else
|
else
|
||||||
echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset
|
echo "_cpusched=\"cfs\"" > "$_where"/cpuschedset
|
||||||
fi
|
fi
|
||||||
@ -109,27 +105,33 @@ source=("https://git.kernel.org/torvalds/t/linux-${_basekernel}-${_sub}.tar.gz"
|
|||||||
# 0004-glitched-ondemand-muqss.patch
|
# 0004-glitched-ondemand-muqss.patch
|
||||||
# 0004-glitched-muqss.patch
|
# 0004-glitched-muqss.patch
|
||||||
# 0004-5.7-ck1.patch
|
# 0004-5.7-ck1.patch
|
||||||
# 0005-glitched-ondemand-pds.patch
|
0005-glitched-ondemand-pds.patch
|
||||||
# 0005-glitched-pds.patch
|
0005-glitched-pds.patch
|
||||||
# 0005-v5.7_undead-pds099o.patch
|
0005-v5.7_undead-pds099o.patch
|
||||||
0006-add-acs-overrides_iommu.patch
|
0006-add-acs-overrides_iommu.patch
|
||||||
0007-v5.7-fsync.patch
|
0007-v5.7-fsync.patch
|
||||||
#0008-5.6-bcachefs.patch
|
#0008-5.6-bcachefs.patch
|
||||||
# 0009-glitched-ondemand-bmq.patch
|
0009-glitched-ondemand-bmq.patch
|
||||||
# 0009-glitched-bmq.patch
|
0009-glitched-bmq.patch
|
||||||
# 0009-bmq_v5.7-r0.patch
|
0009-bmq_v5.7-r0.patch
|
||||||
0011-ZFS-fix.patch
|
0011-ZFS-fix.patch
|
||||||
#0012-linux-hardened.patch
|
#0012-linux-hardened.patch
|
||||||
0013-tp_smapi_ec.patch
|
0013-tp_smapi_ec.patch
|
||||||
)
|
)
|
||||||
sha256sums=('b2367bfb8247f821620d76305580caa1cc4f25ab31cabe3ad61c385d4ddf6df6'
|
sha256sums=('b2367bfb8247f821620d76305580caa1cc4f25ab31cabe3ad61c385d4ddf6df6'
|
||||||
'46a362f76188c1c409776f7b1a8852efb42b8f7ea49951f29ee565587133370a'
|
'46545c4d30016927eef958fd1de3741f6ef25b99e14bd466b3e70e09a9256d34'
|
||||||
'31dc68e84aecfb7d069efb1305049122c65694676be8b955634abcf0675922a2'
|
'31dc68e84aecfb7d069efb1305049122c65694676be8b955634abcf0675922a2'
|
||||||
'd02bf5ca08fd610394b9d3a0c3b176d74af206f897dee826e5cbaec97bb4a4aa'
|
'd02bf5ca08fd610394b9d3a0c3b176d74af206f897dee826e5cbaec97bb4a4aa'
|
||||||
'3eec6cf265fc76428dac1a9bd9894307bab1564bc7583c4d8b9274e5287225ae'
|
'3eec6cf265fc76428dac1a9bd9894307bab1564bc7583c4d8b9274e5287225ae'
|
||||||
'7058e57fd68367b029adc77f2a82928f1433daaf02c8c279cb2d13556c8804d7'
|
'7058e57fd68367b029adc77f2a82928f1433daaf02c8c279cb2d13556c8804d7'
|
||||||
|
'62496f9ca788996181ef145f96ad26291282fcc3fb95cdc04080dcf84365be33'
|
||||||
|
'7fd8e776209dac98627453fda754bdf9aff4a09f27cb0b3766d7983612eb3c74'
|
||||||
|
'5cfa69b15f02c6ff2526e604027af36716ff10908f6bd379d8f4529490ad1ce5'
|
||||||
'19661ec0d39f9663452b34433214c755179894528bf73a42f6ba52ccf572832a'
|
'19661ec0d39f9663452b34433214c755179894528bf73a42f6ba52ccf572832a'
|
||||||
'2d9260b80b43bbd605cf420d6bd53aa7262103dfd77196ba590ece5600b6dc0d'
|
'2d9260b80b43bbd605cf420d6bd53aa7262103dfd77196ba590ece5600b6dc0d'
|
||||||
|
'9fad4a40449e09522899955762c8928ae17f4cdaa16e01239fd12592e9d58177'
|
||||||
|
'965a517a283f265a012545fbb5cc9e516efc9f6166d2aa1baf7293a32a1086b7'
|
||||||
|
'0ae69a3486ab9f24d1f51d7bb46ef90ca597934a05fd2a93bc4affa12025ac9a'
|
||||||
'49262ce4a8089fa70275aad742fc914baa28d9c384f710c9a62f64796d13e104'
|
'49262ce4a8089fa70275aad742fc914baa28d9c384f710c9a62f64796d13e104'
|
||||||
'7ba451d95d2bc07d983661a7e9602a9b239522c98d42197c706c01905f0efba2')
|
'7ba451d95d2bc07d983661a7e9602a9b239522c98d42197c706c01905f0efba2')
|
||||||
|
|
||||||
|
@ -1,8 +1,16 @@
|
|||||||
**Due to intel_pstate poor performances as of late, I have decided to set it to passive mode to make use of the acpi_cpufreq governors passthrough, keeping full support for turbo frequencies.**
|
**Due to intel_pstate poor performances as of late, I have decided to set it to passive mode to make use of the acpi_cpufreq governors passthrough, keeping full support for turbo frequencies.**
|
||||||
|
|
||||||
### Not compatible with Nvidia proprietary driver currently
|
### MuQSS is not yet an available option for this revision
|
||||||
|
|
||||||
A custom Linux kernel 5.7 RC with added tweaks for a nice interactivity/performance balance, aiming for the best gaming experience.
|
A custom Linux kernel 5.7 RC with specific PDS and BMQ CPU schedulers related patchsets selector (stock CFS is also an option) and added tweaks for a nice interactivity/performance balance, aiming for the best gaming experience.
|
||||||
|
|
||||||
|
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension.
|
||||||
|
|
||||||
|
BMQ : http://cchalpha.blogspot.com/
|
||||||
|
|
||||||
|
PDS-mq was originally created by Alfred Chen : http://cchalpha.blogspot.com/
|
||||||
|
|
||||||
|
While he dropped it with kernel 5.1 in favor of its BMQ evolution/rework, my pretty bad gaming experiences with BMQ up to this point convinced me to keep PDS afloat for as long as it'll make sense/I'll be able to.
|
||||||
|
|
||||||
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension.
|
Various personalization options available and userpatches support (put your own patches in the same dir as the PKGBUILD, with the ".mypatch" extension.
|
||||||
|
|
||||||
|
@ -47,9 +47,9 @@ _debugdisable="false"
|
|||||||
|
|
||||||
# LEAVE AN EMPTY VALUE TO BE PROMPTED ABOUT FOLLOWING OPTIONS AT BUILD TIME
|
# LEAVE AN EMPTY VALUE TO BE PROMPTED ABOUT FOLLOWING OPTIONS AT BUILD TIME
|
||||||
|
|
||||||
# CPU scheduler - Options are "pds", muqss, "bmq", "cfs" or "cfsturbo" (experimental, for power CPUs https://lkml.org/lkml/2019/7/25/296)
|
# CPU scheduler - Options are "pds", "bmq", "cfs" or "cfsturbo" (experimental, for power CPUs https://lkml.org/lkml/2019/7/25/296)
|
||||||
# "pds" is the recommended option for gaming
|
# "pds" is the recommended option for gaming
|
||||||
#_cpusched=""
|
_cpusched=""
|
||||||
|
|
||||||
# CPU sched_yield_type - Choose what sort of yield sched_yield will perform
|
# CPU sched_yield_type - Choose what sort of yield sched_yield will perform
|
||||||
# For PDS and MuQSS: 0: No yield. (Recommended option for gaming on PDS and MuQSS)
|
# For PDS and MuQSS: 0: No yield. (Recommended option for gaming on PDS and MuQSS)
|
||||||
@ -58,7 +58,7 @@ _debugdisable="false"
|
|||||||
# For BMQ: 0: No yield.
|
# For BMQ: 0: No yield.
|
||||||
# 1: Deboost and requeue task. (Default)
|
# 1: Deboost and requeue task. (Default)
|
||||||
# 2: Set rq skip task.
|
# 2: Set rq skip task.
|
||||||
#_sched_yield_type=""
|
_sched_yield_type=""
|
||||||
|
|
||||||
# Round Robin interval is the longest duration two tasks with the same nice level will be delayed for. When CPU time is requested by a task, it receives a time slice equal
|
# Round Robin interval is the longest duration two tasks with the same nice level will be delayed for. When CPU time is requested by a task, it receives a time slice equal
|
||||||
# to the rr_interval in addition to a virtual deadline. When using yield_type 2, a low value can help offset the disadvantages of rescheduling a process that has yielded.
|
# to the rr_interval in addition to a virtual deadline. When using yield_type 2, a low value can help offset the disadvantages of rescheduling a process that has yielded.
|
||||||
@ -66,7 +66,7 @@ _debugdisable="false"
|
|||||||
# PDS default: 4ms"
|
# PDS default: 4ms"
|
||||||
# BMQ default: 4ms"
|
# BMQ default: 4ms"
|
||||||
# Set to "1" for 2ms, "2" for 4ms, "3" for 6ms, "4" for 8ms, or "default" to keep the chosen scheduler defaults.
|
# Set to "1" for 2ms, "2" for 4ms, "3" for 6ms, "4" for 8ms, or "default" to keep the chosen scheduler defaults.
|
||||||
#_rr_interval=""
|
_rr_interval=""
|
||||||
|
|
||||||
# Set to "true" to disable FUNCTION_TRACER/GRAPH_TRACER, lowering overhead but limiting debugging and analyzing of kernel functions - Kernel default is "false"
|
# Set to "true" to disable FUNCTION_TRACER/GRAPH_TRACER, lowering overhead but limiting debugging and analyzing of kernel functions - Kernel default is "false"
|
||||||
_ftracedisable="false"
|
_ftracedisable="false"
|
||||||
|
@ -5073,7 +5073,7 @@ CONFIG_THERMAL_GOV_USER_SPACE=y
|
|||||||
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
|
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
|
||||||
CONFIG_CPU_THERMAL=y
|
CONFIG_CPU_THERMAL=y
|
||||||
CONFIG_CPU_FREQ_THERMAL=y
|
CONFIG_CPU_FREQ_THERMAL=y
|
||||||
# CONFIG_CPU_IDLE_THERMAL is not set
|
CONFIG_CPU_IDLE_THERMAL=y
|
||||||
CONFIG_CLOCK_THERMAL=y
|
CONFIG_CLOCK_THERMAL=y
|
||||||
CONFIG_DEVFREQ_THERMAL=y
|
CONFIG_DEVFREQ_THERMAL=y
|
||||||
# CONFIG_THERMAL_EMULATION is not set
|
# CONFIG_THERMAL_EMULATION is not set
|
||||||
|
@ -0,0 +1,18 @@
|
|||||||
|
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
index 6b423eebfd5d..61e3271675d6 100644
|
||||||
|
--- a/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
+++ b/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
@@ -21,10 +21,10 @@
|
||||||
|
#include "cpufreq_ondemand.h"
|
||||||
|
|
||||||
|
/* On-demand governor macros */
|
||||||
|
-#define DEF_FREQUENCY_UP_THRESHOLD (63)
|
||||||
|
-#define DEF_SAMPLING_DOWN_FACTOR (1)
|
||||||
|
+#define DEF_FREQUENCY_UP_THRESHOLD (55)
|
||||||
|
+#define DEF_SAMPLING_DOWN_FACTOR (5)
|
||||||
|
#define MAX_SAMPLING_DOWN_FACTOR (100000)
|
||||||
|
-#define MICRO_FREQUENCY_UP_THRESHOLD (95)
|
||||||
|
+#define MICRO_FREQUENCY_UP_THRESHOLD (63)
|
||||||
|
#define MICRO_FREQUENCY_MIN_SAMPLE_RATE (10000)
|
||||||
|
#define MIN_FREQUENCY_UP_THRESHOLD (1)
|
||||||
|
#define MAX_FREQUENCY_UP_THRESHOLD (100)
|
166
linux57-rc-tkg/linux57-tkg-patches/0005-glitched-pds.patch
Normal file
166
linux57-rc-tkg/linux57-tkg-patches/0005-glitched-pds.patch
Normal file
@ -0,0 +1,166 @@
|
|||||||
|
From f7f49141a5dbe9c99d78196b58c44307fb2e6be3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tk-Glitch <ti3nou@gmail.com>
|
||||||
|
Date: Wed, 4 Jul 2018 04:30:08 +0200
|
||||||
|
Subject: glitched - PDS
|
||||||
|
|
||||||
|
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
|
||||||
|
index 2a202a846757..1d9c7ed79b11 100644
|
||||||
|
--- a/kernel/Kconfig.hz
|
||||||
|
+++ b/kernel/Kconfig.hz
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "Timer frequency"
|
||||||
|
- default HZ_250
|
||||||
|
+ default HZ_500
|
||||||
|
help
|
||||||
|
Allows the configuration of the timer frequency. It is customary
|
||||||
|
to have the timer interrupt run at 1000 Hz but 100 Hz may be more
|
||||||
|
@@ -39,6 +39,13 @@ choice
|
||||||
|
on SMP and NUMA systems and exactly dividing by both PAL and
|
||||||
|
NTSC frame rates for video and multimedia work.
|
||||||
|
|
||||||
|
+ config HZ_500
|
||||||
|
+ bool "500 HZ"
|
||||||
|
+ help
|
||||||
|
+ 500 Hz is a balanced timer frequency. Provides fast interactivity
|
||||||
|
+ on desktops with great smoothness without increasing CPU power
|
||||||
|
+ consumption and sacrificing the battery life on laptops.
|
||||||
|
+
|
||||||
|
config HZ_1000
|
||||||
|
bool "1000 HZ"
|
||||||
|
help
|
||||||
|
@@ -52,6 +59,7 @@ config HZ
|
||||||
|
default 100 if HZ_100
|
||||||
|
default 250 if HZ_250
|
||||||
|
default 300 if HZ_300
|
||||||
|
+ default 500 if HZ_500
|
||||||
|
default 1000 if HZ_1000
|
||||||
|
|
||||||
|
config SCHED_HRTICK
|
||||||
|
|
||||||
|
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
|
||||||
|
index 2a202a846757..1d9c7ed79b11 100644
|
||||||
|
--- a/kernel/Kconfig.hz
|
||||||
|
+++ b/kernel/Kconfig.hz
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "Timer frequency"
|
||||||
|
- default HZ_500
|
||||||
|
+ default HZ_750
|
||||||
|
help
|
||||||
|
Allows the configuration of the timer frequency. It is customary
|
||||||
|
to have the timer interrupt run at 1000 Hz but 100 Hz may be more
|
||||||
|
@@ -46,6 +46,13 @@ choice
|
||||||
|
on desktops with great smoothness without increasing CPU power
|
||||||
|
consumption and sacrificing the battery life on laptops.
|
||||||
|
|
||||||
|
+ config HZ_750
|
||||||
|
+ bool "750 HZ"
|
||||||
|
+ help
|
||||||
|
+ 750 Hz is a good timer frequency for desktops. Provides fast
|
||||||
|
+ interactivity with great smoothness without sacrificing too
|
||||||
|
+ much throughput.
|
||||||
|
+
|
||||||
|
config HZ_1000
|
||||||
|
bool "1000 HZ"
|
||||||
|
help
|
||||||
|
@@ -60,6 +67,7 @@ config HZ
|
||||||
|
default 250 if HZ_250
|
||||||
|
default 300 if HZ_300
|
||||||
|
default 500 if HZ_500
|
||||||
|
+ default 750 if HZ_750
|
||||||
|
default 1000 if HZ_1000
|
||||||
|
|
||||||
|
config SCHED_HRTICK
|
||||||
|
|
||||||
|
diff --git a/mm/vmscan.c b/mm/vmscan.c
|
||||||
|
index 9270a4370d54..30d01e647417 100644
|
||||||
|
--- a/mm/vmscan.c
|
||||||
|
+++ b/mm/vmscan.c
|
||||||
|
@@ -159,7 +159,7 @@ struct scan_control {
|
||||||
|
/*
|
||||||
|
* From 0 .. 100. Higher means more swappy.
|
||||||
|
*/
|
||||||
|
-int vm_swappiness = 60;
|
||||||
|
+int vm_swappiness = 20;
|
||||||
|
/*
|
||||||
|
* The total number of pages which are beyond the high watermark within all
|
||||||
|
* zones.
|
||||||
|
|
||||||
|
diff --git a/init/Kconfig b/init/Kconfig
|
||||||
|
index 11fd9b502d06..e9bc34d3019b 100644
|
||||||
|
--- a/init/Kconfig
|
||||||
|
+++ b/init/Kconfig
|
||||||
|
@@ -715,6 +715,7 @@ menu "Scheduler features"
|
||||||
|
config UCLAMP_TASK
|
||||||
|
bool "Enable utilization clamping for RT/FAIR tasks"
|
||||||
|
depends on CPU_FREQ_GOV_SCHEDUTIL
|
||||||
|
+ depends on !SCHED_PDS
|
||||||
|
help
|
||||||
|
This feature enables the scheduler to track the clamped utilization
|
||||||
|
of each CPU based on RUNNABLE tasks scheduled on that CPU.
|
||||||
|
@@ -948,7 +948,6 @@ config CGROUP_DEVICE
|
||||||
|
|
||||||
|
config CGROUP_CPUACCT
|
||||||
|
bool "Simple CPU accounting controller"
|
||||||
|
- depends on !SCHED_PDS
|
||||||
|
help
|
||||||
|
Provides a simple controller for monitoring the
|
||||||
|
total CPU consumed by the tasks in a cgroup.
|
||||||
|
diff --git a/kernel/sched/Makefile b/kernel/sched/Makefile
|
||||||
|
index b23231bae996..cab4e5c5b38e 100644
|
||||||
|
--- a/kernel/sched/Makefile
|
||||||
|
+++ b/kernel/sched/Makefile
|
||||||
|
@@ -24,13 +24,13 @@ obj-y += fair.o rt.o deadline.o
|
||||||
|
obj-$(CONFIG_SMP) += cpudeadline.o topology.o stop_task.o
|
||||||
|
obj-$(CONFIG_SCHED_AUTOGROUP) += autogroup.o
|
||||||
|
obj-$(CONFIG_SCHED_DEBUG) += debug.o
|
||||||
|
-obj-$(CONFIG_CGROUP_CPUACCT) += cpuacct.o
|
||||||
|
endif
|
||||||
|
obj-y += loadavg.o clock.o cputime.o
|
||||||
|
obj-y += idle.o
|
||||||
|
obj-y += wait.o wait_bit.o swait.o completion.o
|
||||||
|
obj-$(CONFIG_SMP) += cpupri.o pelt.o
|
||||||
|
obj-$(CONFIG_SCHEDSTATS) += stats.o
|
||||||
|
+obj-$(CONFIG_CGROUP_CPUACCT) += cpuacct.o
|
||||||
|
obj-$(CONFIG_CPU_FREQ) += cpufreq.o
|
||||||
|
obj-$(CONFIG_CPU_FREQ_GOV_SCHEDUTIL) += cpufreq_schedutil.o
|
||||||
|
obj-$(CONFIG_MEMBARRIER) += membarrier.o
|
||||||
|
|
||||||
|
diff --git a/kernel/sched/pds.c b/kernel/sched/pds.c
|
||||||
|
index 9281ad164..f09a609cf 100644
|
||||||
|
--- a/kernel/sched/pds.c
|
||||||
|
+++ b/kernel/sched/pds.c
|
||||||
|
@@ -81,6 +81,18 @@ enum {
|
||||||
|
NR_CPU_AFFINITY_CHK_LEVEL
|
||||||
|
};
|
||||||
|
|
||||||
|
+/*
|
||||||
|
+ * This allows printing both to /proc/sched_debug and
|
||||||
|
+ * to the console
|
||||||
|
+ */
|
||||||
|
+#define SEQ_printf(m, x...) \
|
||||||
|
+ do { \
|
||||||
|
+ if (m) \
|
||||||
|
+ seq_printf(m, x); \
|
||||||
|
+ else \
|
||||||
|
+ pr_cont(x); \
|
||||||
|
+ } while (0)
|
||||||
|
+
|
||||||
|
static inline void print_scheduler_version(void)
|
||||||
|
{
|
||||||
|
printk(KERN_INFO "pds: PDS-mq CPU Scheduler 0.99o by Alfred Chen.\n");
|
||||||
|
@@ -6353,7 +6365,10 @@ void ia64_set_curr_task(int cpu, struct task_struct *p)
|
||||||
|
#ifdef CONFIG_SCHED_DEBUG
|
||||||
|
void proc_sched_show_task(struct task_struct *p, struct pid_namespace *ns,
|
||||||
|
struct seq_file *m)
|
||||||
|
-{}
|
||||||
|
+{
|
||||||
|
+ SEQ_printf(m, "%s (%d, #threads: %d)\n", p->comm, task_pid_nr_ns(p, ns),
|
||||||
|
+ get_nr_threads(p));
|
||||||
|
+}
|
||||||
|
|
||||||
|
void proc_sched_set_task(struct task_struct *p)
|
||||||
|
{}
|
8396
linux57-rc-tkg/linux57-tkg-patches/0005-v5.7_undead-pds099o.patch
Normal file
8396
linux57-rc-tkg/linux57-tkg-patches/0005-v5.7_undead-pds099o.patch
Normal file
File diff suppressed because it is too large
Load Diff
7675
linux57-rc-tkg/linux57-tkg-patches/0009-bmq_v5.7-r0.patch
Normal file
7675
linux57-rc-tkg/linux57-tkg-patches/0009-bmq_v5.7-r0.patch
Normal file
File diff suppressed because it is too large
Load Diff
90
linux57-rc-tkg/linux57-tkg-patches/0009-glitched-bmq.patch
Normal file
90
linux57-rc-tkg/linux57-tkg-patches/0009-glitched-bmq.patch
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
From f7f49141a5dbe9c99d78196b58c44307fb2e6be3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tk-Glitch <ti3nou@gmail.com>
|
||||||
|
Date: Wed, 4 Jul 2018 04:30:08 +0200
|
||||||
|
Subject: glitched - BMQ
|
||||||
|
|
||||||
|
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
|
||||||
|
index 2a202a846757..1d9c7ed79b11 100644
|
||||||
|
--- a/kernel/Kconfig.hz
|
||||||
|
+++ b/kernel/Kconfig.hz
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "Timer frequency"
|
||||||
|
- default HZ_250
|
||||||
|
+ default HZ_500
|
||||||
|
help
|
||||||
|
Allows the configuration of the timer frequency. It is customary
|
||||||
|
to have the timer interrupt run at 1000 Hz but 100 Hz may be more
|
||||||
|
@@ -39,6 +39,13 @@ choice
|
||||||
|
on SMP and NUMA systems and exactly dividing by both PAL and
|
||||||
|
NTSC frame rates for video and multimedia work.
|
||||||
|
|
||||||
|
+ config HZ_500
|
||||||
|
+ bool "500 HZ"
|
||||||
|
+ help
|
||||||
|
+ 500 Hz is a balanced timer frequency. Provides fast interactivity
|
||||||
|
+ on desktops with great smoothness without increasing CPU power
|
||||||
|
+ consumption and sacrificing the battery life on laptops.
|
||||||
|
+
|
||||||
|
config HZ_1000
|
||||||
|
bool "1000 HZ"
|
||||||
|
help
|
||||||
|
@@ -52,6 +59,7 @@ config HZ
|
||||||
|
default 100 if HZ_100
|
||||||
|
default 250 if HZ_250
|
||||||
|
default 300 if HZ_300
|
||||||
|
+ default 500 if HZ_500
|
||||||
|
default 1000 if HZ_1000
|
||||||
|
|
||||||
|
config SCHED_HRTICK
|
||||||
|
|
||||||
|
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
|
||||||
|
index 2a202a846757..1d9c7ed79b11 100644
|
||||||
|
--- a/kernel/Kconfig.hz
|
||||||
|
+++ b/kernel/Kconfig.hz
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "Timer frequency"
|
||||||
|
- default HZ_500
|
||||||
|
+ default HZ_750
|
||||||
|
help
|
||||||
|
Allows the configuration of the timer frequency. It is customary
|
||||||
|
to have the timer interrupt run at 1000 Hz but 100 Hz may be more
|
||||||
|
@@ -46,6 +46,13 @@ choice
|
||||||
|
on desktops with great smoothness without increasing CPU power
|
||||||
|
consumption and sacrificing the battery life on laptops.
|
||||||
|
|
||||||
|
+ config HZ_750
|
||||||
|
+ bool "750 HZ"
|
||||||
|
+ help
|
||||||
|
+ 750 Hz is a good timer frequency for desktops. Provides fast
|
||||||
|
+ interactivity with great smoothness without sacrificing too
|
||||||
|
+ much throughput.
|
||||||
|
+
|
||||||
|
config HZ_1000
|
||||||
|
bool "1000 HZ"
|
||||||
|
help
|
||||||
|
@@ -60,6 +67,7 @@ config HZ
|
||||||
|
default 250 if HZ_250
|
||||||
|
default 300 if HZ_300
|
||||||
|
default 500 if HZ_500
|
||||||
|
+ default 750 if HZ_750
|
||||||
|
default 1000 if HZ_1000
|
||||||
|
|
||||||
|
config SCHED_HRTICK
|
||||||
|
|
||||||
|
diff --git a/mm/vmscan.c b/mm/vmscan.c
|
||||||
|
index 9270a4370d54..30d01e647417 100644
|
||||||
|
--- a/mm/vmscan.c
|
||||||
|
+++ b/mm/vmscan.c
|
||||||
|
@@ -159,7 +159,7 @@ struct scan_control {
|
||||||
|
/*
|
||||||
|
* From 0 .. 100. Higher means more swappy.
|
||||||
|
*/
|
||||||
|
-int vm_swappiness = 60;
|
||||||
|
+int vm_swappiness = 20;
|
||||||
|
/*
|
||||||
|
* The total number of pages which are beyond the high watermark within all
|
||||||
|
* zones.
|
@ -0,0 +1,18 @@
|
|||||||
|
diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
index 6b423eebfd5d..61e3271675d6 100644
|
||||||
|
--- a/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
+++ b/drivers/cpufreq/cpufreq_ondemand.c
|
||||||
|
@@ -21,10 +21,10 @@
|
||||||
|
#include "cpufreq_ondemand.h"
|
||||||
|
|
||||||
|
/* On-demand governor macros */
|
||||||
|
-#define DEF_FREQUENCY_UP_THRESHOLD (80)
|
||||||
|
-#define DEF_SAMPLING_DOWN_FACTOR (1)
|
||||||
|
+#define DEF_FREQUENCY_UP_THRESHOLD (55)
|
||||||
|
+#define DEF_SAMPLING_DOWN_FACTOR (5)
|
||||||
|
#define MAX_SAMPLING_DOWN_FACTOR (100000)
|
||||||
|
-#define MICRO_FREQUENCY_UP_THRESHOLD (95)
|
||||||
|
+#define MICRO_FREQUENCY_UP_THRESHOLD (63)
|
||||||
|
#define MICRO_FREQUENCY_MIN_SAMPLE_RATE (10000)
|
||||||
|
#define MIN_FREQUENCY_UP_THRESHOLD (1)
|
||||||
|
#define MAX_FREQUENCY_UP_THRESHOLD (100)
|
Loading…
x
Reference in New Issue
Block a user