lkml.org 
[lkml]   [2004]   [Nov]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC][PATCH] sched: aggressive idle balance
Chen, Kenneth W wrote:

>Andrew Theurer wrote on Tuesday, November 02, 2004 12:17 PM
>
>
>>This patch allows more aggressive idle balances, reducing idle time in
>>scenarios where should not be any, where nr_running > nr_cpus. We have seen
>>this in a couple of online transaction workloads. Three areas are targeted:
>>
>>1) In try_to_wake_up(), wake_idle() is called to move the task to a sibling if
>>the task->cpu is busy and the sibling is idle. This has been expanded to any
>>idle cpu, but the closest idle cpu is picked first by starting with cpu->sd,
>>then going up the domains as necessary.
>>
>>
>
>It occurs to me that half of the patch only applicable to HT, like the change
>in wake_idle(). And also, do you really want to put that functionality in
>wake_idle()? Seems defeating the original intention of that function, which
>only tries to wake up sibling cpu as far as how I understand the code.
>
>
The patch (wake_idle()) should still make a difference with nonHT
systems. It is true that in the mainline code, only HT systems
benefited from wake_idle(). In fact, wake_idle() probably did nothing
at all for Itanium, but with this patch it will, since we scan for an
idle cpu up the domains that have flag SD_WAKE_IDLE (and we addedd that
flag to SD_CPU_INIT and SD_NODE_INIT).

The patch's intention is to make sure we don't leave idle cpus idle.
This can happen because the rate at which tasks are activated and
deactivated is much higher than the idle balance interval, and because
the task_hot prevents migrations even when we do encounter an idle
balance tick.

Honsetly, I think you should be able to see the benefits form all
seciotns of this patch, even without HT.

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

\
 
 \ /
  Last update: 2005-03-22 14:07    [W:1.003 / U:0.032 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site