Messages in this thread | | | From | Linus Torvalds <> | Date | Thu, 27 Sep 2012 11:19:46 -0700 | Subject | Re: 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets - bisected |
| |
On Thu, Sep 27, 2012 at 11:05 AM, Borislav Petkov <bp@alien8.de> wrote: > On Thu, Sep 27, 2012 at 10:44:26AM -0700, Linus Torvalds wrote: >> Or could we just improve the heuristics. What happens if the >> scheduling granularity is increased, for example? It's set to 1ms >> right now, with a logarithmic scaling by number of cpus. > > /proc/sys/kernel/sched_wakeup_granularity_ns=10000000 (10ms) > ------------------------------------------------------ > tps = 4994.730809 (including connections establishing) > tps = 5000.260764 (excluding connections establishing) > > A bit better over the default NO_WAKEUP_PREEMPTION setting.
Ok, so this gives us something possible to actually play with.
For example, maybe SCHED_TUNABLESCALING_LINEAR is more appropriate than SCHED_TUNABLESCALING_LOG. At least for WAKEUP_PREEMPTION. Hmm?
(Btw, "linear" right now looks like 1:1. That's linear, but it's a very aggressive linearity. Something like "factor = (cpus+1)/2" would also be linear, but by a less extreme factor.
Linus
| |