Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Jul 2012 17:53:58 +0100 (BST)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Matthew Jacob <mj@feral.com>
Cc:        freebsd-arch@freebsd.org
Subject:   Re: aio in GENERIC?
Message-ID:  <alpine.BSF.2.00.1207221752310.83786@fledge.watson.org>
In-Reply-To: <500752CD.9030107@feral.com>
References:  <3CE55F29-A5B2-44A7-8854-1ED38BAE6F16@FreeBSD.org> <50075072.5050906@gmail.com> <500752CD.9030107@feral.com>

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

On Wed, 18 Jul 2012, Matthew Jacob wrote:

> What practically does aio offer that is not achieved via pthreads other than 
> slightly simpler code?

Although the VFS side of the AIO code blocks kernel threads during in-progress 
I/O, the socket side is able to do fully asynchronous I/O down the stack 
without committing a kernel thread to it.  As such, it probably is actually 
significantly more scalable, allowing larger numbers of simultaneous 
outstanding I/Os in the network layer, and more efficiently than simply using 
threads.

Robert



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1207221752310.83786>