public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] CPU Scheduler Evaluation tool for 2.6.8-rc1
@ 2004-07-17 23:57 Peter Williams
  2004-07-20  7:03 ` Peter Williams
  0 siblings, 1 reply; 2+ messages in thread
From: Peter Williams @ 2004-07-17 23:57 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: Michal Kaczmarski, Shane Shrybman

The HYDRA patch for facilitating the comparative evaluation of 
alternative CPU schedulers is now available for the 2.6.8-rc1 kernel. 
This patch allows the run time selection of CPU scheduler between a 
slightly modified version of Con Kolivas's staircase scheduler ("sc") 
(including the SCHED_BATCH and SCHED_ISO scheduler classes), the 
priority based scheduler with interactive and throughput bonuses ("pb") 
and an entitlement based scheduler with interactive and throughput 
bonuses ("eb").  This patch is available for download at:

<http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc1-spa_hydra_FULL-v2.0?download>

The file /proc/sys/kernel/cpusched/mode enables control of which 
scheduler is in control.  The string "sc" is used to select the 
staircase scheduler, "pb" to select the priority based scheduler and 
"eb" to select the entitlement based scheduler described above.  The 
control of other scheduling parameters is facilitated by other files in 
the directory /proc/sys/kernel/cpusched as follows (in alphabetical order):

base_promotion_interval - controls the interval between successive (anti 
starvation) runnable task promotions (for the "pb" scheduler this is 
effectively a means to control the "severity" of "nice").  The actual 
interval will be (number of runnable tasks - 1) times this value in msecs.

compute - "sc" scheduler boolean parameter

cpu_hog_threshold - for the "pb" and "eb" schedulers this parameter sets 
the CPU usage rate (in parts per thousand) above which tasks will be 
considered to be CPU hogs and start to lose interactive bonus points (if 
they have any)

hog_sub_cycle_threshold - for the "pb" and "eb" schedulers this the 
number of time slices above which calculation of various rates will be 
made on a per time slice basis rather than a full scheduling cycle (i.e. 
from one "wake up" to the next).  This is necessary to ensure that very 
hard CPU spinners usage statistics are representative of the current 
system state.

ia_threshold - for the "pb" and "eb" schedulers this is the sleepiness 
(i.e. the ratio of sleep time per cycle to sleep plus cpu time per 
cycle) (in parts per thousand) above which a task will be considered to 
be interactive and have its interactive bonus increased asymptotically 
towards the maximum.

initial_ia_bonus - for the "pb" and "eb" schedulers this is the 
interactive bonus given to newly forked processes.

interactive - "sc" scheduler boolean parameter

log_at_exit - boolean parameter to control whether tasks' CPU scheduling 
statistics are logged at exit

max_ia_bonus - the maximum interactive bonus that a task can receive

max_tpt_bonus - the maximum throughput bonus that a task can receive

sched_iso_threshold - for the "eb" and "pb" this is a CPU usage 
threshold (in parts per thousand) above which SCHED_ISO tasks will cease 
to get special treatment

time_slice - the time slice size in msecs that will be given to each task

To facilitate the viewing/setting of these parameters a primitive GUI, 
which also displays per CPU scheduling statistics for the system, is 
available at:

<http://prdownloads.sourceforge.net/cpuse/gcpuctl_hydra-1.2.tar.gz?download>

Stand alone versions of the three schedulers are available from:

<https://sourceforge.net/projects/cpuse/>

The stand alone "pb" and "eb" schedulers do not currently support 
SCHED_BATCH and SCHED_ISO.

Peter
-- 
Peter Williams                                   pwil3058@bigpond.net.au

"Learning, n. The kind of ignorance distinguishing the studious."
  -- Ambrose Bierce


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] CPU Scheduler Evaluation tool for 2.6.8-rc1
  2004-07-17 23:57 [PATCH] CPU Scheduler Evaluation tool for 2.6.8-rc1 Peter Williams
@ 2004-07-20  7:03 ` Peter Williams
  0 siblings, 0 replies; 2+ messages in thread
From: Peter Williams @ 2004-07-20  7:03 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: Michal Kaczmarski, Shane Shrybman

Peter Williams wrote:
> The HYDRA patch for facilitating the comparative evaluation of 
> alternative CPU schedulers is now available for the 2.6.8-rc1 kernel. 
> This patch allows the run time selection of CPU scheduler between a 
> slightly modified version of Con Kolivas's staircase scheduler ("sc") 
> (including the SCHED_BATCH and SCHED_ISO scheduler classes), the 
> priority based scheduler with interactive and throughput bonuses ("pb") 
> and an entitlement based scheduler with interactive and throughput 
> bonuses ("eb").  This patch is available for download at:
> 
> <http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc1-spa_hydra_FULL-v2.0?download> 
> 

Now available for 2.6.8-rc2 at:

<http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc2-spa_hydra_FULL-v2.1?download>

> 
> The file /proc/sys/kernel/cpusched/mode enables control of which 
> scheduler is in control.  The string "sc" is used to select the 
> staircase scheduler, "pb" to select the priority based scheduler and 
> "eb" to select the entitlement based scheduler described above.  The 
> control of other scheduling parameters is facilitated by other files in 
> the directory /proc/sys/kernel/cpusched as follows (in alphabetical order):
> 
> base_promotion_interval - controls the interval between successive (anti 
> starvation) runnable task promotions (for the "pb" scheduler this is 
> effectively a means to control the "severity" of "nice").  The actual 
> interval will be (number of runnable tasks - 1) times this value in msecs.
> 
> compute - "sc" scheduler boolean parameter
> 
> cpu_hog_threshold - for the "pb" and "eb" schedulers this parameter sets 
> the CPU usage rate (in parts per thousand) above which tasks will be 
> considered to be CPU hogs and start to lose interactive bonus points (if 
> they have any)
> 
> hog_sub_cycle_threshold - for the "pb" and "eb" schedulers this the 
> number of time slices above which calculation of various rates will be 
> made on a per time slice basis rather than a full scheduling cycle (i.e. 
> from one "wake up" to the next).  This is necessary to ensure that very 
> hard CPU spinners usage statistics are representative of the current 
> system state.
> 
> ia_threshold - for the "pb" and "eb" schedulers this is the sleepiness 
> (i.e. the ratio of sleep time per cycle to sleep plus cpu time per 
> cycle) (in parts per thousand) above which a task will be considered to 
> be interactive and have its interactive bonus increased asymptotically 
> towards the maximum.
> 
> initial_ia_bonus - for the "pb" and "eb" schedulers this is the 
> interactive bonus given to newly forked processes.
> 
> interactive - "sc" scheduler boolean parameter
> 
> log_at_exit - boolean parameter to control whether tasks' CPU scheduling 
> statistics are logged at exit
> 
> max_ia_bonus - the maximum interactive bonus that a task can receive
> 
> max_tpt_bonus - the maximum throughput bonus that a task can receive
> 
> sched_iso_threshold - for the "eb" and "pb" this is a CPU usage 
> threshold (in parts per thousand) above which SCHED_ISO tasks will cease 
> to get special treatment
> 
> time_slice - the time slice size in msecs that will be given to each task
> 
> To facilitate the viewing/setting of these parameters a primitive GUI, 
> which also displays per CPU scheduling statistics for the system, is 
> available at:
> 
> <http://prdownloads.sourceforge.net/cpuse/gcpuctl_hydra-1.2.tar.gz?download> 
> 
> 
> Stand alone versions of the three schedulers are available from:
> 
> <https://sourceforge.net/projects/cpuse/>
> 
> The stand alone "pb" and "eb" schedulers do not currently support 
> SCHED_BATCH and SCHED_ISO.
> 
> Peter


-- 
Peter Williams                                   pwil3058@bigpond.net.au

"Learning, n. The kind of ignorance distinguishing the studious."
  -- Ambrose Bierce


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-07-20  7:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-17 23:57 [PATCH] CPU Scheduler Evaluation tool for 2.6.8-rc1 Peter Williams
2004-07-20  7:03 ` Peter Williams

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox