Re: squid and tcp splicing ?

From: Adrian Chadd <adrian@dont-contact.us>
Date: Wed, 10 Sep 2003 21:27:32 -0600

On Wed, Sep 10, 2003, Henrik Nordstrom wrote:

> It is my opinion that there is many better ways of optimizing proxy
> class I/O without resorting to kernel level "splicing". For example
> it would be very interesting to see a I/O mechanism not involving
> copying of data on each read/write combined with a sane event
> notification. This would accomplish the same goal with fully
> preserved semantics and only marginally increased CPU load compared
> to kernel level "splicing". There has been a couple of attempts in
> doing this based on AIO but I have not seen any promising results
> yet.. (AIO has reasonable I/O primitives but lacks in notification,
> and most kernels are not very suitable for AIO).

Actually - Linux-2.6 and FreeBSD-4.x have quite nice POSIX AIO implementations
for at least the disk IO side of things.

I'm going to hang back on my squid-3 COSS changes until its been
released and Robert commits his disk IO work - it fixes a rather
fatal COSS panic which I really don't have the time to try and
track down and I doubt really want to be doing the branch tracking
dance on the production caches.

One thing that'll improve the IO throughput for COSS quite a bit
is to redo the storeRead/storeWrite interface to try and do
large IO transfers (where "large" is "as much as the store can do").
That'll cut back on the AIO queue depth quite considerably and
possibly improve disk IO performance even more than COSS already
does.

Adrian
Received on Wed Sep 10 2003 - 21:27:36 MDT

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