From: "Stephen C. Tweedie" <sct@redhat.com>
To: "Jeffrey W. Baker" <jwbaker@acm.org>
Cc: Andrew Morton <andrewm@uow.edu.au>,
Lance Larsh <llarsh@oracle.com>,
Brian Strand <bstrand@switchmanagement.com>,
Andrea Arcangeli <andrea@suse.de>,
linux-kernel@vger.kernel.org, Stephen Tweedie <sct@redhat.com>
Subject: Re: 2x Oracle slowdown from 2.2.16 to 2.4.4
Date: Mon, 16 Jul 2001 23:03:49 +0100 [thread overview]
Message-ID: <20010716230349.A31172@redhat.com> (raw)
In-Reply-To: <3B4E7666.EFD7CC89@uow.edu.au> <Pine.LNX.4.33.0107130834080.313-100000@desktop>
In-Reply-To: <Pine.LNX.4.33.0107130834080.313-100000@desktop>; from jwbaker@acm.org on Fri, Jul 13, 2001 at 08:36:01AM -0700
Hi,
On Fri, Jul 13, 2001 at 08:36:01AM -0700, Jeffrey W. Baker wrote:
> > files O_SYNC. Journal size was 400 megs, mount options `data=journal'
> >
> > ext2: Throughput 2.71849 MB/sec (NB=3.39812 MB/sec 27.1849 MBit/sec)
> > ext3: Throughput 12.3623 MB/sec (NB=15.4529 MB/sec 123.623 MBit/sec)
> >
> > The difference will be less dramatic with large, individual writes.
>
> This is a totally transient effect, right? The journal acts as a faster
> buffer, but if programs are writing a lot of data to the disk for a very
> long time, the throughput will eventually be throttled by writing the
> journal back into the filesystem.
Not for O_SYNC. For ext2, *every* O_SYNC append to a file involves
seeking between inodes and indirect blocks and data blocks. With ext3
with data journaling enabled, the synchronous part of the IO is a
single sequential write to the journal. The async writeback will
affect throughput, yes, but since it is done in the background, it can
do tons of optimisations: if you extend a file a hundred times with
O_SYNC, then you are forced to journal the inode update a hundred
times but the writeback which occurs later need only be done once.
For async traffic, you're quite correct. For synchronous traffic, the
writeback later on is still async, and the synchronous costs really do
often dominate, so the net effect over time is still a big win.
Cheers,
Stephen
next prev parent reply other threads:[~2001-07-17 9:05 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-07-11 0:45 2x Oracle slowdown from 2.2.16 to 2.4.4 Brian Strand
2001-07-11 1:15 ` Andrea Arcangeli
2001-07-11 16:44 ` Brian Strand
2001-07-11 17:08 ` Andrea Arcangeli
2001-07-11 17:23 ` Chris Mason
2001-07-11 23:03 ` Lance Larsh
2001-07-11 23:46 ` Brian Strand
2001-07-12 15:21 ` Lance Larsh
2001-07-12 21:31 ` Hans Reiser
2001-07-12 21:51 ` Chris Mason
2001-07-13 3:00 ` Andrew Morton
2001-07-13 4:17 ` Andrew Morton
2001-07-13 15:36 ` Jeffrey W. Baker
2001-07-13 15:49 ` Andrew Morton
2001-07-16 22:03 ` Stephen C. Tweedie [this message]
2001-07-12 0:23 ` Chris Mason
2001-07-12 14:48 ` Lance Larsh
2001-07-12 2:30 ` Andrea Arcangeli
2001-07-12 9:26 ` [lvm-devel] " Andi Kleen
2001-07-12 9:45 ` Andrea Arcangeli
2001-07-12 17:04 ` Andreas Dilger
2001-07-12 18:18 ` Andrea Arcangeli
2001-07-12 22:55 ` Andrea Arcangeli
2001-07-13 7:35 ` Andreas Dilger
2001-07-13 16:07 ` Andrea Arcangeli
2001-07-12 6:12 ` parviz dey
2001-07-11 2:58 ` Jeff V. Merkey
2001-07-11 15:55 ` Brian Strand
2001-07-11 2:59 ` Jeff V. Merkey
[not found] <Pine.LNX.4.21.0107111530170.2342-100000@llarsh-pc3.us.oracle.com.suse.lists.linux.kernel>
2001-07-12 10:14 ` Andi Kleen
2001-07-12 14:22 ` Chris Mason
2001-07-12 16:09 ` Lance Larsh
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20010716230349.A31172@redhat.com \
--to=sct@redhat.com \
--cc=andrea@suse.de \
--cc=andrewm@uow.edu.au \
--cc=bstrand@switchmanagement.com \
--cc=jwbaker@acm.org \
--cc=linux-kernel@vger.kernel.org \
--cc=llarsh@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox