Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: Preemtive kernel (Was: Re: [2.4.17/18pre] VM and swap - it's really unusable) | Date | Wed, 9 Jan 2002 08:48:41 +0100 |
| |
On January 9, 2002 08:25 am, Roger Larsson wrote: > (the subject has been wrong for some time now...) > > On Wednesday den 9 January 2002 07.26, Daniel Phillips wrote: > > On January 9, 2002 12:02 am, Luigi Genoni wrote: > > > On Tue, 8 Jan 2002, Daniel Phillips wrote: > > > > On January 8, 2002 04:29 pm, Andrea Arcangeli wrote: > > > > > but I just wanted to make clear that the > > > > > idea that is floating around that preemptive kernel is all goodness > > > > > is very far from reality, you get very low mean latency but at a > > > > > price. > > > > > > > > A price lots of people are willing to pay > > > > > > Probably sometimes they are not making a good business. > > > > Perhaps. But they are happy customers and their music sounds better. > > > > Note: the dominating cost of -preempt is not Robert's patch, but the fact > > that you need to have CONFIG_SMP enabled, even for uniprocessor, turning > > all those stub macros into real spinlocks. For a dual processor you have > > to have this anyway and it just isn't an issue. > > Well you don't - the first versions used the SMP spinlocks macros but > replaced them with own code. (basically an INC on entry and a DEC and test > when leaving) > > Think about what happens on a UP > There are two cases > - the processor is in the critical section, it can not be preempted = no > other process can take the CPU away from it. > - the processor is not in a critical section, no process can be executing > inside it = can never be busy. > => no real spinlocks needed on a UP
Right, thanks, it was immediately obvious when you pointed out that the macros are just used to find the bounds of the critical regions. So the cost of -preempt is somewhat less than I had imagined.
-- Daniel - 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/
| |