>linuxsymposium

July 20-23rd, 2005, Ottawa, Canada

Registration

Register/Submit Proposal

Content

Schedule
Presentations
Tutorials
BOFS

Related

Sponsors
Venue
Travel
FAQ

Archives

Proceedings
Photos
2005
2004
2003
2002
2001
2000
1999

Contacts

Information
Home

AIO on Linux: Whither to go from here ?

Suparna Bhattacharya (suparna@in.ibm.com)

Hosted by: Daniel McNeil, OSDL & Suparna Bhattacharya, IBM

Although AIO has been presented in OLS papers and discussed in KS sessions over the past few years, both unanswered questions and unsupported features remain. There is a good reason for this: despite much discussion of technical design issues involved in implementing kernel-AIO support, there has been relatively little consolidated input from actual users of AIO on Linux. The purpose of this BOF is to bring together AIO developers and users in order to share experiences and brainstorm on the remaining design and implementation issues. Possible discussion topics include:

(1) How many applications & potential users exist for AIO on Linux? Which interfaces do they prefer to use - native or POSIX? What are their experiences, complaints and additional requirements?

(2) How complete and efficient is POSIX AIO support on Linux? Is there a need for additional work in that area?

(3) Are there users for buffered filesystem AIO other than O_DIRECT AIO?

(4) Should the AIO and epoll interfaces be combined, and, if so, how ? For example, is there an agreement on the API for IOCB_CMD_EPOLL_WAIT ?

(5) Is there a strong requirement for network AIO? Is there a community interested in working in this area?

(6) Are there some interesting kernel features which could be built over AIO?

(7) Should the VFS interfaces/design change to a fully asynchronous model?

(8) The current implementation of AIO falls back to synchronous IO in certain situations -- such relaxation of asynchronity is based on assumptions driven by expected usage patterns in certain database workloads. Are there any counter examples where these assumptions are not valid?