directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <elecha...@gmail.com>
Subject Re: Interesting post about AIO
Date Sat, 02 Mar 2013 08:43:15 GMT
Le 3/2/13 9:10 AM, Julien Vermillard a écrit :
> Hi,
> Agreeing with jeff, you can't complain of the lack of an accessor, when you
> just voided the attachment ;)
Again, this is not the interesting part n this article...
>
> I really wonder what JDK guys have in mind with AIO, it's far of being a
> slick API, it doesn't support UDP (you need to mix AIO and NIO if you want
> to support TCP and UDP) and I can't see how it could be a performance gain ?

Java AIO implementation is supposed to benefit from OS taht has a
specific way to deal with AIO (through completion queues, like what is
done on Windows, some Linux versions and probably other OS).

This page is providing some information :
http://www.kegel.com/c10k.html#aio

Another very complete description :
http://stackoverflow.com/questions/4093185/whats-the-difference-between-epoll-poll-threadpool

Regarding AIO/ePoll on linux, an interesting paper :
https://docs.google.com/viewer?a=v&q=cache:CwPj9geCCTkJ:www.linuxsymposium.org/archives/OLS/Reprints-2002/lahaise-reprint.pdf+&hl=en&gl=fr&pid=bl&srcid=ADGEESj6bzG_kAkqH8KQGWL5Evt4yDbIEhrsaaNMD4eD7p-bhJHoAjjQeT3Ys8fXWY_dn88WY98kW0Hg2-sBIPrvFpBpniMrKK6wY07lY80x1ZT9tEX_TERnxwosL6WXjokFs_huSdX6&sig=AHIEtbRAgWiO-HR0BOjkxh3JcYetJpTXnA
>
> After few year of usage I start to think the whole java.nio and
> java.concurency are weirdly designed API.
That's probably why API like MINA are necessary :)
>
> Anyway we can't expect more performance for AIO since it's probably just an
> API built on top of NIO. 
Not so sure.

> If we want more performance, we need to zero copy
> interface with the linux epoll() sys call. But I'm not sure we want to do
> that :)
AIO does no copy the data, compared to NIO. It's probably one of the
aspect that leads to better performances.

I'm still wondering if we can see any gain, but the more I read about
AIO, the more I'm convinced we need to spend some time on a prototype to
get valid numbers.

In any case, would we implement a layer on top of AIO, the upper API
should not be different, and that's were we have to be careful !


-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com 


Mime
View raw message