[PATCH] V-3.0 Single Priority Array O(1) CPU Scheduler Evaluation

From: Peter Williams
Date: Fri Aug 06 2004 - 20:47:18 EST


Version 3.1 of the various single priority array scheduler patches for 2.6.7, 2.6.8-rc2 and 2.6.8-rc3 kernels are now available for evaluation.

This is a bug fix release to fix a problem caused by sched_clock() not being monotonic. This meant that when measuring small time intervals by taking the difference between successive calls to sched_clock() there is a possibility of obtaining a negative value (or, as unsigned long longs are being used, a very big one). One unfortunate consequence of this is that adding to non zero intervals together could lead to a zero result and possible divide by zero problems.


1. [ZAPHOD] Runtime selectable choice between a priority based or entitlement based O(1) scheduler with active/expired arrays replaced by a single array and an O(1) promotion mechanism plus scheduling statistics with new interactive bonus mechanism and throughput bonus mechanism:

2.6.7 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.7-spa_zaphod_FULL-v3.1?download>
2.6.8-rc2 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc2-spa_zaphod_FULL-v3.1?download>
2.6.8-rc3 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc3-spa_zaphod_FULL-v3.1?download>

2. Slightly modified version of Con Kolivas's staircase O(1) scheduler with active/expired arrays replaced by a single array and an O(1) promotion mechanism:

2.6.7 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.7-spa_sc_FULL-v3.1?download>
2.6.8-rc2 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc2-spa_sc_FULL-v3.1?download>
2.6.8-rc3 <http://prdownloads.sourceforge.net/cpuse/patch-2.6.8-rc3-spa_sc_FULL-v3.1?download>

3. [HYDRA] Runtime selection between staircase, priority based and entitlement based O(1) schedulers:

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

Other schedulers are also available from <https://sourceforge.net/projects/cpuse/>

So as not to interfere with the staircase scheduler's evaluation I do not propose to release patches for rc3-mm kernels unless requested.

I'm in the process of simplifying my schedulers (I got carried away with the theory) in order to reduce their overhead and hope to release a new slimmer version early next week. Also on the "to do" list are CPU rate caps.

Peter
--
Peter Williams pwil3058@xxxxxxxxxxxxxx

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

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/