[lkml]   [2009]   [Mar]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Linux 2.6.29
On Thu, 26 Mar 2009 17:27:43 -0700 (PDT) Linus Torvalds <> wrote:

> On Thu, 26 Mar 2009, Andrew Morton wrote:
> >
> > userspace can do it quite easily. Run a self-tuning script after
> > installation and when the disk hardware changes significantly.
> Uhhuh.
> "user space can do it".
> That's the global cop-out.

userspace can get closer than the kernel can.

> The fact is, user-space isn't doing it, and never has done anything even
> _remotely_ like it.
> In fact, I claim that it's impossible to do. If you give me a number for
> the throughput of your harddisk, I will laugh in your face and call you a
> moron.
> Why? Because no such number exists. It depends on the access patterns.

Those access patterns are observable!

> If
> you write one large file, the number will be very different (and not just
> by a few percent) from the numbers of you writing thousands of small
> files, or re-writing a large database in random order.
> So no. User space CAN NOT DO IT, and the fact that you even claim
> something like that shows a distinct lack of thought.

userspace can get closer. Even if it's asking the user "what sort of
applications will this machine be running" and then use a set of canned
tunables based on that.

Better would be to observe system behaviour, perhaps in real time and
make adjustments.

> > Maybe we should set the tunables to 99.9% to make it suck enough to
> > motivate someone.
> The only times tunables have worked for us is when they auto-tune.
> IOW, we don't have "use 35% of memory for buffer cache" tunables, we just
> dynamically auto-tune memory use. And no, we don't expect user space to
> run some "tuning program for their load" either.

This particular case is exceptional - it's just too hard for the kernel
to be able to predict the future for this one.

It wouldn't be terribly hard for a userspace daemon to produce better
results than we can achieve in-kernel. That might of course require
additional kernel work to support it well.

 \ /
  Last update: 2009-03-27 01:53    [W:0.495 / U:2.216 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site