bor.borygmus

A programming weblog by Hao Lian. • A long walk through an angry forest. • A series of memory leaks brought on by senility.

How to do quick Linux network programming Perl and gain blackmail material at the same time.

sharpsproductions.com

[(December 20, 2010) .]

(Today, bor.borygmus tries to be LWN.) Mike Galbraith has checked in his SCHED_AUTOGROUP patch into Linux with impressive, photogenic results. What SCHED_AUTOGROUP does is it automatically configures a rarely used Linux feature (cgroups) to group together related processes so that, under heavy load, certain processes still remain performant under the kernel scheduler. For example, if you’re parallel building the kernel, you still want the browser to smooth-scroll. Building is going to constantly vie for the CPU whereas smooth-scrolling will only require the CPU every now an then. A bad scheduler will allocate very few time slots to smooth-scrolling, thinking that it’s unimportant. Whereas this heuristic is mostly correct for the server environment where long-running, non-UI processes should be scheduled like this, it’s less clear on the Linux desktop since laggy scrolling means far worse user experience. In any case, SCHED_AUTOGROUP is a small elegant patch that figures out how to build cgroups that isolate these UI loads away from CPU-intensive loads. This has made quite a few Linux desktop users happy. Even this guy.

[(November 16, 2010) .]