On Wed, 18 Apr 2007, Ingo Molnar wrote: > That's one reason why i dont think it's necessarily a good idea to > group-schedule threads, we dont really want to do a per thread group > percpu_alloc(). I still do not have clear how much overhead this will bring into the table, but I think (like Linus was pointing out) the hierarchy should look like: Top (VCPU maybe?) User Process Thread The "run_queue" concept (and data) that now is bound to a CPU, need to be replicated in: ROOT <- VCPUs add themselves here VCPU <- USERs add themselves here USER <- PROCs add themselves here PROC <- THREADs add themselves here THREAD (ultimate fine grained scheduling unit) So ROOT, VCPU, USER and PROC will have their own "run_queue". Picking up a new task would mean: VCPU = ROOT->lookup(); USER = VCPU->lookup(); PROC = USER->lookup(); THREAD = PROC->lookup(); Run-time statistics should propagate back the other way around. > In fact for threads the _reverse_ problem exists, threaded apps tend to > _strive_ for more performance - hence their desperation of using the > threaded programming model to begin with ;) (just think of media > playback apps which are typically multithreaded) The same user nicing two different multi-threaded processes would expect a predictable CPU distribution too. Doing that efficently (the old per-cpu run-queue is pretty nice from many POVs) is the real challenge. - Davide - 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/
- Follow-Ups:
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Bernd Eckenfels <ecki@lina.inka.de>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Ingo Molnar <mingo@elte.hu>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- References:
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Matt Mackall <mpm@selenic.com>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Nick Piggin <npiggin@suse.de>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Matt Mackall <mpm@selenic.com>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Linus Torvalds <torvalds@linux-foundation.org>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Matt Mackall <mpm@selenic.com>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Linus Torvalds <torvalds@linux-foundation.org>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Ingo Molnar <mingo@elte.hu>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Ingo Molnar <mingo@elte.hu>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Linus Torvalds <torvalds@linux-foundation.org>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Davide Libenzi <davidel@xmailserver.org>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- From: Ingo Molnar <mingo@elte.hu>
- Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- Prev by Date: Re: Upgraded to 2.6.20.7 - positives
- Next by Date: Re: Loud "pop" coming from hard drive on reboot
- Previous by thread: Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- Next by thread: Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]
- Index(es):
![]() |