[LSF/MM TOPIC] async buffered diskio read for userspace apps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I would like to talk about enhancing the user interfaces for doing
async buffered disk IO for userspace applications. There's a whole
class of distributed web applications (most new applications today)
that would benefit from such an API. Most of them today rely on
cobbling one together in user space using a threadpool.

The current in kernel AIO interfaces that only support DIRECTIO, they
were generally designed by and for big database vendors. The consensus
is that the current AIO interfaces usually lead to decreased
performance for those app.

I've been developing a new read syscall that allows non-blocking
diskio read (provided that data is in the page cache). It's analogous
to what exists today in the network world with recvmsg with MSG_NOWAIT
flag. The work has been previously described by LWN here:
https://lwn.net/Articles/612483/

Previous attempts (over the last 12+ years) at non-blocking buffered
diskio has stalled due to their complexity. I would like to talk about
the problem, my solution, and get feedback on the course of action.

Over the years I've been building the low level guys of various "web
applications". That usually involves async network based applications
(epoll based servers) and the biggest pain point for the last 8+ years
has been async disk IO.


-- 
Milosz Tanski
CTO
16 East 34th Street, 15th floor
New York, NY 10016

p: 646-253-9055
e: milosz@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux