Re: O_DIRECT performance impact on 2.4.18 (was: Re: [PATCH] 2.5.14 IDE 56)

Gerrit Huizenga
2002-05-11T00:56:09Z

In message <Pine.LNX.4.44.0205100854370.2230-100000@home.transmeta.com>, > : Li
nus Torvalds writes:
>
>
> On Fri, 10 May 2002, Lincoln Dale wrote:
> >
> > so O_DIRECT in 2.4.18 still shows up as a 55% performance hit versus no
> > O_DIRECT. anyone have any clues?
>
> Yes.
>
> O_DIRECT isn't doing any read-ahead.
>
> For O_DIRECT to be a win, you need to make it asynchronous.
>
> Linus

O_DIRECT is especially useful for applications which maintain their
own cache, e.g. a database. And adding Async to it is an even bigger
bonus (another Oracleism we did in PTX). No read ahead, no attempt
to keep the buffer in memory until memory pressure kicks in. Just
a good tool for doing random IO (like an OLTP database would do).

gerrit