Messages in this thread | | | Subject | Re: commit e9e9250b: sync wakeup bustage when waker is an RT task | From | Peter Zijlstra <> | Date | Mon, 17 May 2010 10:52:25 +0200 |
| |
On Mon, 2010-05-17 at 10:49 +0200, Peter Zijlstra wrote: > On Mon, 2010-05-17 at 06:38 +0200, Mike Galbraith wrote: > > What would be the harm/consequence of restoring RT tasks to rq->load so > > the wake_affine()::sync logic just worked as before without hackery? > > Well, you'd have to constantly adjust the task weight of RT tasks to > reflect their actual consumption. Not really feasible. > > So the proportional stuff works like: > > slice_i = w_i / (\Sum_j w_j) * dt > > Giving a RT task a sensible weight we'd have to reverse that: > > w_i = slice_i/dt * (\Sum_j w_j)
Another point to note is that this requires we track per-RT-task usage averages, whereas the cpu_power approach simply lumps everything !fair (one of the things still on the TODO list is account for IRQ overhead) into a single large bucket and doesn't care.
| |