Messages in this thread | | | From | Nick Piggin <> | Subject | Re: Poor PostgreSQL scaling on Linux 2.6.25-rc5 (vs 2.6.22) | Date | Mon, 17 Mar 2008 16:34:45 +1100 |
| |
On Monday 17 March 2008 16:16, Ray Lee wrote: > On Sun, Mar 16, 2008 at 5:44 PM, Nick Piggin <nickpiggin@yahoo.com.au> wrote: > > I don't see how it is really helpful for interactive processes either. > > By definition, if they are not CPU bound, then they should be run > > quite soon after waking up; if they are CPU bound, then reducing > > efficiency by increasing context switches is effectively going to > > increase their latency anyway. > > How? Are you saying that switching the granularity to, say, 25ms, will > *decrease* the latency of interactive tasks?
No. It shouldn't change them.
> And the efficiency we're talking about reducing here is due to the > fact that tasks are hitting cold caches more times per second when the > granularity is smaller, correct? Or are you concerned by another > issue?
Secondary issues like the actual cost of context switch, but they are generally in the noise compared to cache and tlb costs.
> > Can this be changed by default, please? > > Not without benchmarks of interactivity, please. There are far, far > more linux desktops than there are servers. People expect to have to > tune servers (I do, for the servers I maintain). People don't expect > to have to tune a desktop to make it run well.
Linux desktops shouldn't run with massive loads anyway. Tuning the scheduler to "work" well in an X session when you have a make -j100 in the background is retarded.
But sure, if the scheduler doesn't properly prioritize non-CPU bound tasks versus CPU bound ones, then it should be fixed to do so.
| |