From: Andrew Piskorski <atp@piskorski.com>
To: Gavin Sherry <swm@linuxworld.com.au>
Cc: David Boreham <david_list@boreham.org>
Cc: pgsql-hackers@postgresql.org
Subject: Re: ice-broker scan thread
Date: Tue, 29 Nov 2005 10:22:56 -0500
Message-ID: <20051129152256.GA16183@tehun.pair.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0511291513260.18370@linuxworld.com.au>
References: <Pine.LNX.4.58.0511282217470.13586@josh.db>
<Pine.LNX.4.58.0511291429330.18112@linuxworld.com.au>
<438BD493.3070507@boreham.org>
<Pine.LNX.4.58.0511291513260.18370@linuxworld.com.au>
On Tue, Nov 29, 2005 at 03:14:38PM +1100, Gavin Sherry wrote:
> On Mon, 28 Nov 2005, David Boreham wrote:
> > Gavin Sherry wrote:
> > > MySQL, Oracle and others implement read-ahead threads to simulate async IO
> >
> > I always believed that Oracle used async file I/O. Not that I've seen their
> The paper I linked to seemed to suggest that they weren't using async IO
> in 9.2 -- which is fairly old.
http://www.vldb2005.org/program/paper/wed/p1116-hall.pdf
"Getting Priorities Straight: Improving Linux Support for Database I/O"
by Hall and Bonnet
Proceedings of the 31st VLDB Conference, Trondheim, Norway, 2005
I think you've misread that paper. AFAICT it neither says nor even
suggests that Oracle 9.2 does not use asynchronous I/O on Linux. In
fact, it seems to strongly suggest exactly the opposite, that Oracle
does use async I/O whereever it can.
Note they also reference this document, which as of 2002 and Linux
kernel 2.4.x, was urging Oracle DBAs to use Oracle's kernel-based
asynchronous I/O support whenever possible:
http://www.ixora.com.au/tips/use_asynchronous_io.htm
What Hall and Bonnet's paper DOES say, is that both Oracle and MySQL
InnoDB appear to use a "conservative" I/O submission policy, but
Oracle does so more efficiently. They also argue that both Oracle and
MySQL fail to utilize the "full potential" of Linux async I/O because
of their conservative submission policies, and that an "agressive" I/O
submissions policy would work better, but only if support for
Prioritized I/O is added to Linux. They then proceed to add that
support, and make some basic changes to InnoDB to partially take
advantage of it.
Also interesting is their casual mention that for RDBMS workloads, the
default Linux 2.6 disk scheduler "anticipatory" is inferior to the
"deadline" scheduler. They base their (simple sounding) Prioritized
I/O support on the deadline scheduler.
--
Andrew Piskorski <atp@piskorski.com>
http://www.piskorski.com/
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: atp@piskorski.com, swm@linuxworld.com.au, david_list@boreham.org
Subject: Re: ice-broker scan thread
In-Reply-To: <20051129152256.GA16183@tehun.pair.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox