http://code.google.com/p/rifs-scheduler/downloads/detail?name=rifs-v4-kernel3.3.x
This version of RIFS is the most easiest one. I have removed a lot of
complex things from v3 and it is implement in a simple algorithm.
When a task sleep, the priority of it will raise.When a task spend all
its timeslice, the priority of it will drop.
Then when the priority of a tack touched the top priority or the
bottom priority, the prio will become its original priority
minus/plus(The priority touched the top/bottom) rotary_spin.The
default value of rotary_spin is 5. It is tunable and non-root user can
also tune it (/proc/sys/kernel/rotary_spin).
<IT IS DESIGNED FOR DESKTOP>
Chen
Benchmark(RIFS-Foreground tuning on sysctl):
idle load:
Using 2991769 loops per ms, running every load for 30 seconds
Benchmarking kernel 3.3.5-RIFS-V3 at datestamp 201206081304
--- Benchmarking simulated cpu of Audio in the presence of simulated ---
Load Latency +/- SD (ms) Max Latency % Desired CPU % Deadlines Met
None 0.0 +/- 0.0 0.0 100 100
Video 0.0 +/- 0.0 0.0 100 100
X 0.0 +/- 0.0 0.0 100 100
Burn 0.0 +/- 0.0 0.0 100 100
Write 0.0 +/- 0.0 0.0 100 100
Read 0.0 +/- 0.0 0.0 100 100
latt -c180 sleep 300 load:
Using 2991769 loops per ms, running every load for 30 seconds
Benchmarking kernel 3.3.5-RIFS-V3 at datestamp 201206081309
--- Benchmarking simulated cpu of Audio in the presence of simulated ---
Load Latency +/- SD (ms) Max Latency % Desired CPU % Deadlines Met
None 0.0 +/- 0.0 0.0 100 100
Video 0.0 +/- 0.0 0.0 100 100
X 0.0 +/- 0.0 0.1 100 100
Burn 0.0 +/- 0.0 0.0 100 100
Write 0.0 +/- 0.0 0.0 100 100
Read 0.0 +/- 0.0 0.4 100 100
Benchmark(CFS):
idle load:
Using 2991769 loops per ms, running every load for 30 seconds
Benchmarking kernel 3.3.7-1.fc16.i686.PAE at datestamp 201206071923
--- Benchmarking simulated cpu of Audio in the presence of simulated ---
Load Latency +/- SD (ms) Max Latency % Desired CPU % Deadlines Met
None 0.0 +/- 0.1 1.5 100 100
Video 0.0 +/- 0.0 0.0 100 100
X 0.0 +/- 0.1 3.6 100 100
Burn 0.0 +/- 0.0 0.6 100 100
Write 0.0 +/- 0.0 0.2 100 100
Read 0.0 +/- 0.0 0.8 100 100
latt -c180 sleep 300 load:
Using 2991769 loops per ms, running every load for 30 seconds
Benchmarking kernel 3.3.7-1.fc16.i686.PAE at datestamp 201206071933
--- Benchmarking simulated cpu of Audio in the presence of simulated ---
Load Latency +/- SD (ms) Max Latency % Desired CPU % Deadlines Met
None 0.0 +/- 0.3 6.6 100 100
Video 0.0 +/- 0.1 1.7 100 100
X 0.5 +/- 1.1 5.1 100 100
Burn 0.0 +/- 0.1 0.8 100 100
Write 0.0 +/- 0.2 3.1 100 100
Read 0.0 +/- 0.2 4.5 100 100