[ANNOUNCE] linux-4.11-ck1 / MuQSS CPU scheduler 0.155

From: Con Kolivas
Date: Fri May 12 2017 - 00:18:57 EST


These are patches designed to improve system responsiveness and interactivity
with specific emphasis on the desktop, but configurable for any workload. The
patchset is mainly centred around the Multiple Queue Skiplist Scheduler,
MuQSS.


linux-4.11-ck1
-ck1 patches:
http://ck.kolivas.org/patches/4.0/4.11/4.11-ck1/

Git tree:
https://github.com/ckolivas/linux/tree/4.11-ck


MuQSS
Download:
http://ck.kolivas.org/patches/muqss/4.0/4.11/4.11-sched-MuQSS_155.patch

Git tree:
https://github.com/ckolivas/linux/tree/4.11-muqss


4.11-ck1 full patch list:
0001-Multiple-Queue-Skiplist-Scheduler-version-0.155-for-.patch
0002-Make-preemptible-kernel-default.patch
0003-Expose-vmsplit-for-our-pour-32-bit-users.patch
0004-Create-highres-timeout-variants-of-schedule_timeout-.patch
0005-Special-case-calls-of-schedule_timeout-1-to-use-the-.patch
0006-Convert-msleep-to-use-hrtimers-when-active.patch
0007-Replace-all-schedule-timeout-1-with-schedule_min_hrt.patch
0008-Replace-all-calls-to-schedule_timeout_interruptible-.patch
0009-Replace-all-calls-to-schedule_timeout_uninterruptibl.patch
0010-Make-hrtimer-granularity-and-minimum-hrtimeout-confi.patch
0011-Don-t-use-hrtimer-overlay-when-pm_freezing-since-som.patch
0012-Make-threaded-IRQs-optionally-the-default-which-can-.patch
0013-Reinstate-default-Hz-of-100-in-combination-with-MuQS.patch
0014-Make-writeback-throttling-default-enabled.patch
0015-Swap-sucks.patch
0016-BFQ-v8-for-linux-4.11.patch
0017-Make-BFQ-default-IO-scheduler.patch
0018-Add-ck1-version.patch

For a brief description of each patch without trawling the git tree, each
patch can be found as a quilt series here:
http://ck.kolivas.org/patches/4.0/4.11/4.11-ck1/patches/


MuQSS 0.155 updates:
Fixed syscall convention in the code for sched_setscheduler.
Fixed copy to user error with max CPUs enabled.
Changed skip lists to 25% probability of increased level (from 50%) scaling
each CPU up to loads of 64k as a result.
Minor preemption code tweak.


4.11-ck1 updates:
Cleaned up the patchset.


This was the most massive resync I think I can ever recall with the mainline
kernel thanks to the complete restructuring of the scheduler code by Mingo.
Fortunately there weren't that many actual changes to the scheduler itself
that I needed to port but it was still a protracted effort. Probably the most
amusing part of the resync was seeing my name mysteriously disappear from the
credits of sched/core.c from mainline, although everyone's names were removed
along with it.

Given the size of this merge, it is possible there are build configurations
that fail, so bear with me and post your config if that's the case.

Hacking blog:
http://ck-hack.blogspot.com/

Simple homepage:
http://kernel.kolivas.org

Enjoy!
ãæããäãã
--
-ck