On Sat, Nov 20, 2010 at 2:35 PM, Mike Galbraith <efault@gmx.de> wrote:
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"?
--