Messages in this thread | | | Date | Sat, 4 Dec 2010 12:39:48 -0500 | Subject | Re: [PATCH v4] sched: automated per session task groups | From | Colin Walters <> |
| |
On Sat, Nov 20, 2010 at 2:35 PM, Mike Galbraith <efault@gmx.de> wrote:
> A recurring complaint from CFS users is that parallel kbuild has a negative > impact on desktop interactivity. This patch implements an idea from Linus, > to automatically create task groups. This patch only per session autogroups, > but leaves the way open for enhancement.
Resurrecting this thread a bit, one question I didn't see discussed is simply:
Why doesn't "nice" work for this? On my Fedora 14 system, "ps alxf" shows almost everything in my session is running at the default nice 0. The only exceptions are "/usr/libexec/tracker-miner-fs" at 19, and pulseaudio at -11.
I don't know What would happen if say the scheduler effectively group-scheduled each nice value? Then, what we tell people to do is run "nice make". Which in fact, has been documented as a thing to do for decades. Actually I tend to use "ionice" too, which is also useful if any of your desktop applications happen to make the mistake of doing I/O in the mainloop (emacs fsync()ing in UI thread, I'm looking at you).
Quickly testing kernel-2.6.35.6-48.fc14.x86_64 on a "Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz", the difference between "make -j 128" and "nice make -j 128" is quite noticeable. As you'd expect. The CFS docs already say:
"The CFS scheduler has a much stronger handling of nice levels and SCHED_BATCH than the previous vanilla scheduler: both types of workloads are isolated much more aggressively"
Does it just need to be even more aggressive, and people use "nice"? -- 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/
| |