LWN.net Logo

Linux: It's Not Just for Servers Anymore (Wired)

Linux: It's Not Just for Servers Anymore (Wired)

Posted Jul 28, 2007 10:45 UTC (Sat) by tzafrir (subscriber, #11501)
In reply to: Linux: It's Not Just for Servers Anymore (Wired) by malefic
Parent article: Linux: It's Not Just for Servers Anymore (Wired)

> CONFIG_HZ, CONFIG_PREEMPT, CONFIG_PREEMPT_BKL, CONFIG_IOSHED_CFQ,
> CONFIG_HIGH_RES_TIMERS

Well, those are existing configuration options already. So if one builds a separate "desktop" and a separate "server" kernel, one can give them different values, right?

> Plus you have RSDL/CFS patches available.

CFS is being merged into 2.6.23 .

> Additionally, if you want absolute priority fairness,
> renice and ionice intensive background tasks, renice X,
> and you'll be running a pretty low-latency desktop.

I'm a bit confused here. Do you suggest anything specific that should be changed in the kernel? I also thought that one of the goals of CFS was not to need renice daemon.

> The main point is that optimizations targeted at server
> workflows do not necessarily make desktop functioning worse.

If the main task of the server is answering as many clients as possible, responding a split-second later is not going to hurt it. However wit hyour configuration it is going to have more context switches and hence worse performance.


(Log in to post comments)

Linux: It's Not Just for Servers Anymore (Wired)

Posted Jul 28, 2007 16:33 UTC (Sat) by malefic (subscriber, #37306) [Link]

>> CONFIG_HZ, CONFIG_PREEMPT, CONFIG_PREEMPT_BKL, CONFIG_IOSHED_CFQ,
>> CONFIG_HIGH_RES_TIMERS

> Well, those are existing configuration options already. So if one builds a
> separate "desktop" and a separate "server" kernel, one can give them
> different values, right?

Of course. The point was to highlight the options that make difference.

>> Plus you have RSDL/CFS patches available.

> CFS is being merged into 2.6.23 .

I know that

>> Additionally, if you want absolute priority fairness,
>> renice and ionice intensive background tasks, renice X,
>> and you'll be running a pretty low-latency desktop.

> I'm a bit confused here. Do you suggest anything specific that should be
> changed in the kernel? I also thought that one of the goals of CFS was
> not to need renice daemon.

Not exactly. CFS unlike the <=2.6.22 mainline scheduler does not try to be
overly smart and adjust priorities automagically. Instead it tries to
distribute the CPU time between tasks in a fair unbiased fashion.
So the process niceness is pretty much important for the scheduler.
I don't say it's absolutely necessary to renice stuff with CFS. I say that
CFS is much more deterministic when it comes to nice levels. I.e it
makes more sense to renice processes because you're sure that
every nice level proportionally adds 10% (or something like that,
I don't remember) to the process CPU time.

>> The main point is that optimizations targeted at server
>> workflows do not necessarily make desktop functioning worse.

> If the main task of the server is answering as many clients as possible,
> responding a split-second later is not going to hurt it. However wit
> hyour configuration it is going to have more context switches and hence
> worse performance.

Right. The last sentence wasn't directly related to the configuration
options. It's a general idea that increased efficiency and throughput
are beneficial all around.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.