2.6.13-ck1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



These are patches designed to improve system responsiveness and interactivity. 
It is configurable to any workload but the default ck* patch is aimed at the 
desktop and ck*-server is available with more emphasis on serverspace.


Apply to 2.6.13
http://ck.kolivas.org/patches/2.6/2.6.13/2.6.13-ck1/patch-2.6.13-ck1.bz2
or development version:
http://ck.kolivas.org/patches/2.6/2.6.13/2.6.13-ck1/patch-2.6.13-ck1+.bz2

or server version:
http://ck.kolivas.org/patches/2.6/2.6.13/2.6.13-ck1/patch-2.6.13-ck1-server.bz2


web:
http://kernel.kolivas.org
all patches:
http://ck.kolivas.org/patches/
Split patches available.


Changes since 2.6.12-ck6:

Changed:
 -2.6.12_to_staircase11.3.diff
 +2.6.13_to_staircase12.diff
Minor cleanups. Restore 10ms round robin intervals. 5ms, while giving better 
interactive feel, caused problems on dual core amd64 and 250Hz (for 
reasons that I have yet to track down). The ck1+ patch has 5ms RR intervals.

 -smp-nice-support6.diff
 -smpnice6-smpnice7.diff
 +smp-nice-support7.diff
Rollup

 -batch_ionice.diff
 +isobatch_ionice2.diff
Update the link between i/o priorities and SCHED_ISO

 -mapped_watermark3.diff
This has been replaced with the split out patches that build on this work:

 +vm-mapped.diff
Turn the "swappiness" knob into one with well defined semantics. Rename it
"mapped" to correspond directly with the percentage of mapped ram or
"applications" as users think of it. Currently the swappiness algorithm can
easily lead to swapping situations on simple file copies due to the distress
algorithm which too easily overrides the swappiness value. Add a
"hardmaplimit" tunable, on by default, which only allows the vm to override
the "mapped" tunable when distress is at its greatest to prevent false
out-of-memory situations.

 +vm-lots_watermark.diff
The vm currently performs scanning when allocating ram once the watermarks
are below the pages_low value and tries to restore them to the pages_high
watermark. The disadvantage of this is that we are scanning most aggresssively
at the same time we are allocating ram regardless of the stress the vm is
under. Add a pages_lots watermark and allow the watermark to be relaxed
according to the stress the vm is at the time (according to the priority
value). Thus we have more in reserve next time we are allocating ram and end
up scanning less aggresssively.


Added:
 +sched-iso3.1.patch
Here is a complete rewrite of the SCHED_ISO code. Having dropped SCHED_ISO in 
the stable series in preference for RT RLIMITS it was clear that there is 
still indication for SCHED_ISO for the following reasons:
It provides real-time performance without risking starvation/DoS
It is much easier to set up than RT RLIMITS without any knowledge and you can 
benefit from it without knowing anything about it (unprivileged tasks trying 
to start real time get demoted to SCHED_ISO)
Userspace support for it is here and now

This version of SCHED_ISO is actually much more robust than the one in 
previous -ck kernels which just had a lowish latency version of SCHED_NORMAL. 
SCHED_ISO tasks now actually run like real time tasks at the equivalent 
priority as nice -20 tasks unless they use more than 70% of the cpu for a 
rolling 3 second time period. Then they're demoted to behave like SCHED_NORMAL 
tasks.

 +vm-background_scan.diff
Add a background scanning timer to restore the watermarks to the pages_lots
level and only call on it if kswapd has not been called upon for the last 5
seconds. This allows us to balance all zones to the more generous pages_lots
watermark at a time unrelated to page allocation thus leading to lighter
levels of vm load when called upon under page allocation.

 +pdflush-tweaks.patch
The speed we write out dirty data to disk can clash with the average time disk 
journals write out. This tweaks it to write out dirty data slightly more 
frequently and minimise prolonged write starvation.

 +hz-default_values.patch
Hz is now configurable, so set some useful defaults as 250 is no good to 
either desktop or server. Set 1000 for most desktop architectures (or 100 in 
ck-server).

 +2613ck1-version.diff
Version


Rolled into mainline or above patches or removed:
 -cfq-2.6.12-mm1.patch
 -sched-fix_up_build.patch
 -cfq-ts-2.diff
 -cfq-ts-4.diff
 -s11.3_s11.4.diff
 -s11.4_s11.6.diff
 -patch-2.6.12.5.bz2
 -2612ck6-version.diff


In 2.6.13-ck1+ only:
 +sched-staircase12_tweak.patch
As mentioned above, set round robin intervals to 5ms (unsuitable on some 
hardware). Please try and if you have problems, email me with information.

 +vm-swap-prefetch.patch
This patch stores a list of ram that is put to swap and if the memory 
subsystem is idle for a time it starts swapping the ram pages back in gently 
in the reverse order they went out. The idea is that when you come back to 
your pc after it has been idle for a while, if any applications have been 
swapped out they should have swapped back in quietly. It does not delete the 
page entries from the swap so that if there is any stress, these pages can 
effectively be swapped back out for free without further disk access. The 
patch is still new so has had limited testing only. Please test and report 
back. This depends on the previous 2 vm patches to patch cleanly.


Full patchlist:
sched-run_normal_with_rt_on_sibling.diff
2.6.13_to_staircase12.diff
schedrange.diff
schedbatch2.9.diff
sched-iso3.1.patch
smp-nice-support7.diff
1g_lowmem1_i386.diff
defaultcfq.diff
isobatch_ionice2.diff
rt_ionice.diff
pdflush-tweaks.patch
hz-default_values.patch
vm-mapped.diff
vm-lots_watermark.diff
vm-background_scan.diff
2613ck1-version.diff
vm-swap-prefetch.patch
sched-staircase12_tweak.patch


Cheers,
Con Kolivas

Attachment: pgpYjWRq25F1V.pgp
Description: PGP signature


[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux