Re: Abysmal disk performance, how to debug?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 20 Jan 2007, Willy Tarreau wrote:
> On Sat, Jan 20, 2007 at 09:39:25PM +0100, Tim Schmielau wrote:
> > On Sat, 20 Jan 2007, Willy Tarreau wrote:
> > > On Sat, Jan 20, 2007 at 09:10:22PM +0100, Tim Schmielau wrote:
> > > 
> > > > also explains why you see better results is writeout starts earlier.
> > > 
> > > The results should be better when writeout starts later since most of
> > > the transfer will have been performed at RAM speed. That's what happens
> > > with the user above with 2 GB RAM. But in case of the VAIO with 512 MB,
> > > there's really something strange IMHO. I suspect it has two RAM areas,
> > > one fast and one slow (probably one two large non-cacheable area for a
> > > shared video or such a crap, which can be avoided when reducing the
> > > cache size).
> > 
> > No - the earlier the writeout starts, the earlier he will have enough free 
> > RAM to finish the dd command by buffering the remaining data.
> 
> OK I see your point. While trying to show why I got you wrong, I in fact
> demonstrated to myself that you were right :-)
> 
> For instance, let's say we have 500 MB cache at 1000 MB/s and a write out
> threshold of 80% with a disk at 100 MB/s. Writing 1000 MB would produce
> this pattern :
> 
>   time     data sent   written    dirty data
>   in sec    from dd    to disk     in cache
>    0.0        0 MB        0 MB        0 MB
>    0.4      400 MB        0 MB      400 MB  -> writeout starts
>    1.0      560 MB       60 MB      500 MB
>    5.4     1000 MB      500 MB      500 MB  -> dd leaves.
>   10.4     1000 MB     1000 MB        0 MB  -> write terminated.
> 
> -> avg dd   speed = 1000/5.4 = 185 MB/s
>    avg disk speed = 1000/10.4 = 96 MB/s
> 
> 
> Now with a lower writeout threshold of 2% (10 MB) :
> 
>   time     data sent   written    dirty data
>   in sec    from dd    to disk     in cache
>    0.0        0 MB        0 MB        0 MB
>    0.01      10 MB        0 MB       10 MB  -> writeout starts
>    1.0      599 MB       99 MB      500 MB
>   5.01     1000 MB      500 MB      500 MB  -> dd leaves.
>  10.01     1000 MB     1000 MB        0 MB  -> write terminated.
> 
> -> avg dd   speed = 1000/5.01 = 199.6 MB/s
>    avg disk speed = 1000/10.01 = 99.9 MB/s
> 
> At least, numbers are not that much different to justify a one to two speed
> ratio on the VAIO. The difference being caused by cache speed, it's clearly
> possible that his RAM is definitely very very slow which would then explain
> the difference.
> 
> ----
> > Note that we did not cap the amount of buffers, just started to write out 
> > earlier.
> ----
> 
> Indeed, that's what makes the whole difference. I was used to cap the amount
> of buffers, but the behaviour here is different.
> 
> Thanks for your insight !

Thanks for being so humble in pointing out my logic is flawed. While the 
Vaio certainly cannot write 1000GB/s to its RAM, it's disk is also quite 
slow and the ratio of 10:1 for RAM:disk speed is presumably correct.
So we don't quite understand why dd in RAM is so slow for him.

Thanks,
Tim
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux