Scheduler & semaphore patch for 2.2.14 ...

Davide Libenzi dlibenzi en maticad.it
Sab Ene 22 16:26:15 CST 2000


Hi guys,

here's the patch coded for 2.2.14.
It contains :

* A clustering subdivision of processes in function of their goodness
	This avoid the linear scan of the running queue to find the
	next process to run.
	My test prove that even in high workloaded environment
	not more than two goodnesses are calculated.

* As IBM guys suggested I've reorganized a bit the fields in task_struct
	to reduce the cache footprint

* A wake_up patch that has the goodness calculation inside it.
	This avoid flushing all waiting threads onto the scheduler 
	shoulders.
	IMVHO this is better than the current because avoid the thread 
	flushing, and is better then a simple FIFO coz it try to select the 
	best taks to run.
	This is 100% precise in UP while it's not in SMP due to the fact 
	that we don't know which CPU will reschedule the task.
	Anyway even if in SMP the precision is not 100%, it's better 
	than FIFO.

I don't know if this patch will be usefull or not, the thing the is true is that
it reduces scheduling times on high loaded runqueues, and that can speed up
process wakeup in long waitqueue.

I hope someone having a better suite than mine, should test the patch 
reporting me ( and others ) own impressions and measurements.


Davide.

--
All this stuff is IMVHO
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: sched-patch-2.2.14.tar.gz
Type: application/x-gzip
Size: 5310 bytes
Desc: no disponible
URL: <https://lists.srvr.mx/pipermail/ayuda/attachments/20000123/681f3c5f/attachment.bin>


Más información sobre la lista de distribución Ayuda