On Tue, Jul 13, 2010 at 6:18 AM, Terje Marthinussen <tmarthinus...@gmail.com> wrote: > Due to the need for doing data alignment in the application itself (you are > bypassing all the OS magic here), there is really nothing portable about > O_DIRECT.
I'm totally fine with saying "Here's a JNI library for Linux [or even Linux version >= 2.6.X]" since that makes up 99% of our production deployments, and leaving the remaining 1% with the status quo. > O_DIRECT also bypasses the cache completely Right, that's the idea. :) > O_DIRECT was made to solve HW performance limitation on servers 10+ years > ago. It is far from an ideal solution today (but until stuff like fadvice is > implemented properly, somewhat unavoidable) Exactly: it the fadvise mode that would actually be useful to us, is a no-op and not likely to change soon. A bit of history: http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.18-rc3/2.6.18-rc3-mm1/broken-out/fadvise-make-posix_fadv_noreuse-a-no-op.patch -- Jonathan Ellis Project Chair, Apache Cassandra co-founder of Riptano, the source for professional Cassandra support http://riptano.com