2004-09-01 07:52:52

by Miquel van Smoorenburg

[permalink] [raw]
Subject: Re: HIGHMEM4G config for 1GB RAM on desktop?

On Wed, 01 Sep 2004 00:46:27, Timothy Miller wrote:
> Miquel van Smoorenburg wrote:
> > In article <[email protected]>,
> > Timothy Miller <[email protected]> wrote:
> >
> >>Timothy Miller wrote:
> >>
> >>>Hey, that rings a bell. I have a 3ware 7000-2 controller with two
> >>>WD1200JB drives in RAID1. I find that if I dd from the disk, I get
> >>>exactly the read throughput that is the max for the drives (47MB/sec).
> >>>However, if I do a WRITE test, the performance is miserable.
> >
> > Try setting /sys/block/sda/queue/nr_requests to twice the number
> > in /sys/block/sda/device/queue_depth
>
> This will improve write performance?

You won't know before you try it ofcourse. It helps on my 85xx controllers.
The problem is that the internal queue size of some 3ware controllers
(queue_depth) is larger than the I/O schedulers nr_requests so that
the I/O scheduler doesn't get much chance to properly order and merge
the requests.

I've sent patches to 3ware a couple of times to make queue_depth
writable so that you can tune that as well, but they were refused
for no good reason AFAICS. Very unfortunate - if you have 8 JBOD
disks attached, you want to set queue_depth for each of them to
(max_controller_queue_depth / 8) to prevent one disk from starving
the other ones, but oh well.

> And if this helps, how do I make
> it permanent?

Can't say, depends on your distribution. For recent Debian at
least you can use /etc/sysctl.conf

Mike.