From mboxrd@z Thu Jan 1 00:00:00 1970 From: Milosz Tanski Subject: [LSF/MM TOPIC] async buffered diskio read for userspace apps Date: Thu, 15 Jan 2015 12:43:23 -0500 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Cc: "linux-fsdevel@vger.kernel.org" , linux-mm@kvack.org, Christoph Hellwig To: lsf-pc@lists.linux-foundation.org Return-path: Sender: owner-linux-mm@kvack.org List-Id: linux-fsdevel.vger.kernel.org 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@adfin.com -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org