On Thu, Jul 10, 2008 at 02:20:33PM +0200, Valery Kholodkov wrote:
<snip>
> As an example I have implemented asynchronous gzipper (see aio-test.c).
> However I found, that this example does not outperform gzip, since
> benefits of AIO appear themselfs only in specific conditions. One has to
> deal with multiple buffers to get better performance, which is outside of
> the scope of the example.

I wouldn't expect AIO to knock your socks off on Linux (and certainly not
*BSDs). Kernel support doesn't exist for AIO operating through the disk
buffer cache. Linux only supports AIO for direct I/O, which is extremely
sensitive to myriad system and usage scenarios. Otherwise, it's _still_
emulated w/ threads (in glibc, I think). When vmsplice() supports
nonblocking operations on files, that's probably when Linux will have
complete AIO support (both require similar capabilities). But don't hold
your breath; it requires significant changes in the VM subsystem of all
Unices to implement, nullifying over three decades of assumptions.

Perhaps Solaris or AIX has proper AIO support; I don't know.

AIO is the future, though. And it would be welcome to see support sooner
rather than later.

_______________________________________________
Libevent-users mailing list
Libevent-users@monkey.org
http://monkeymail.org/mailman/listinfo/libevent-users

Reply via email to