Re: [SQU] Performance optimization with diskd

From: Adrian Chadd <adrian@dont-contact.us>
Date: Tue, 27 Feb 2001 02:27:19 -0700

On Tue, Feb 27, 2001, Chemolli Francesco (USI) wrote:
> Hello.
> My main cache is getting pretty busy, with .5M hits/hour of peak traffic.
> I am thinking of ways to improve (even if marginally) performance.
>
> This is my latest thinko:
> I'm using diskd, JBOD, one cache_dir per physical disk.
> If I were to put on each physical disk two (or more) cache_dirs
> half the size of the current one, I'd potentially have
> multiple pending IO requests per disk and thus be able to
> exploit OS-level parallelism, elevator algorithms and whatever
> else.
>
> Is this brainless blabber or does it actually make some sense?

You'd probably get a little more. the whole point behind diskd
is that since a disk handles requests serially you should only
schedule requests serially.

asyncufs wins a little over diskd because it just sticks all the requests
out to the disk and lets the OS handle it. It gets higher throughputs, but
it requires kernel-pthreads along with some pretty heavy overhead
(running asyncufs on a linux box can push your context switches through
the roof because of the way threads under linux are implemented, for
example.)

diskd is a comprimise - since userspace code doesn't know anything about
the file layout it can't elevator sort. So, instead of doing what asyncufs
does and schedule lots-o-IO, it schedules them one at a time.

So, yes.. you'd get slightly more performance, but I bet you're better
off obtaining another cache disk. :)

Adrian

--
To unsubscribe, see http://www.squid-cache.org/mailing-lists.html
Received on Tue Feb 27 2001 - 02:31:07 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:58:13 MST