Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 14 Sep 1999 16:40:37 -0400 (EDT)
From:      Christopher Sedore <cmsedore@mailbox.syr.edu>
To:        Jayson Nordwick <nordwick@scam.xcf.berkeley.edu>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: aio_*
Message-ID:  <Pine.SOL.4.10.9909141613170.1425-100000@rodan.syr.edu>
In-Reply-To: <19990914050240.40381.qmail@scam.xcf.berkeley.edu>

next in thread | previous in thread | raw e-mail | index | archive | help


On Mon, 13 Sep 1999, Jayson Nordwick wrote:

> While reading through (at least trying to... I wish there was some sort of
> kernel documentation available, the entry fee is very high) the aio_* calls,
> I had a few questions to clear up my understanding: 
> 
> 1) Do they only work on files?  The only implementation I see is in 
> the VFS layer.

Any read()/write()'able descriptor should work.

> 2) It is my understanding that it uses an aio daemon running as a kernel
> thread (the aio_daemon() call kind of give that one away).  It seems as
> if this can be almost entirely done in user space.  More important to what
> I am trying to do, it seems as if aio_* does not give peak latency     
> or throughput performace, since the aio_daemon has to compete for resources
> along with all other processes.
>    
> Should aio_* be used for applications that have high performance
> requirements?  What does aio_* get you above having a seperate 
> thread pumping in/out data?

The aio_* stuff (I use a custom patched version in 4.x) offers performance
advantages over select() with large numbers of descriptors.  In terms of
efficiency, I don't have any trouble saturating full-duplex 100mbit link
with aio routines on a reasonably fast box (PII-400 512MB).

As more work gets done to the aio stuff, there are some potential early
advantages available to multiprocessor machines (since the program
'driving' the aio could run concurrently with the kernel code moving
network or disk data).

-Chris



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOL.4.10.9909141613170.1425-100000>