All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@osdl.org>
To: Andrea Arcangeli <andrea@suse.de>
Cc: nickpiggin@yahoo.com.au, axboe@suse.de, linux-kernel@vger.kernel.org
Subject: Re: Time sliced CFQ io scheduler
Date: Tue, 7 Dec 2004 18:25:57 -0800	[thread overview]
Message-ID: <20041207182557.23eed970.akpm@osdl.org> (raw)
In-Reply-To: <20041208022020.GH16322@dualathlon.random>

Andrea Arcangeli <andrea@suse.de> wrote:
>
> On Tue, Dec 07, 2004 at 06:00:33PM -0800, Andrew Morton wrote:
> > untuned SCSI benchmark results without realising that.  If a distro is
> > always selecting CFQ then they've probably gone and deoptimised all their
> > IDE users.  
> 
> The enterprise distro definitely shouldn't use "as" by default: database
> apps _must_ not use AS, they've to use either CFQ or deadline. CFQ is
> definitely the best for enterprise distros. This is a tangible result,
> SCSI/IDE doesn't matter at all (and keep in mind they use O_DIRECT a
> lot, so such 64kib Jens found would be a showstopper for a enterprise
> release, slelecting something different than "as" is a _must_ for
> enterprise distro).

That's a missing hint in the direct-io code.  This fixes it up:

--- 25/fs/direct-io.c~a	2004-12-07 18:12:25.491602512 -0800
+++ 25-akpm/fs/direct-io.c	2004-12-07 18:13:13.661279608 -0800
@@ -1161,6 +1161,8 @@ __blockdev_direct_IO(int rw, struct kioc
 	struct dio *dio;
 	int reader_with_isem = (rw == READ && dio_lock_type == DIO_OWN_LOCKING);
 
+	current->flags |= PF_SYNCWRITE;
+
 	if (bdev)
 		bdev_blkbits = blksize_bits(bdev_hardsect_size(bdev));
 
@@ -1244,6 +1246,7 @@ __blockdev_direct_IO(int rw, struct kioc
 out:
 	if (reader_with_isem)
 		up(&inode->i_sem);
+	current->flags &= ~PF_SYNCWRITE;
 	return retval;
 }
 EXPORT_SYMBOL(__blockdev_direct_IO);
_

> ...
> 
> If you believe AS is going to perform better than CFQ on the database
> enterprise usage, we just need to prove it in practice after the round
> of fixes, then changing the default back to "as" it'll be an additional
> one liner on top of the blocker direct-io bug.

I don't think AS will ever meet the performance of CFQ or deadline for the
seeky database loads, unfortunately.  We busted a gut over that and were
never able to get better than 90% or so.


  reply	other threads:[~2004-12-08  2:26 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-02 13:04 Time sliced CFQ io scheduler Jens Axboe
2004-12-02 13:48 ` Jens Axboe
2004-12-02 19:48   ` Andrew Morton
2004-12-02 19:52     ` Jens Axboe
2004-12-02 20:19       ` Andrew Morton
2004-12-02 20:19         ` Jens Axboe
2004-12-02 20:34           ` Andrew Morton
2004-12-02 20:37             ` Jens Axboe
2004-12-07 23:11               ` Nick Piggin
2004-12-02 22:18         ` Prakash K. Cheemplavam
2004-12-03  7:01           ` Jens Axboe
2004-12-03  9:12             ` Prakash K. Cheemplavam
2004-12-03  9:18               ` Jens Axboe
2004-12-03  9:35                 ` Prakash K. Cheemplavam
2004-12-03  9:43                   ` Jens Axboe
2004-12-03  9:26               ` Andrew Morton
2004-12-03  9:34                 ` Prakash K. Cheemplavam
2004-12-03  9:39                 ` Jens Axboe
2004-12-03  9:54                   ` Prakash K. Cheemplavam
     [not found]                   ` <41B03722.5090001@gmx.de>
2004-12-03 10:31                     ` Jens Axboe
2004-12-03 10:38                       ` Jens Axboe
2004-12-03 10:45                         ` Prakash K. Cheemplavam
2004-12-03 10:48                           ` Jens Axboe
2004-12-03 11:27                             ` Prakash K. Cheemplavam
2004-12-03 11:29                               ` Jens Axboe
2004-12-03 11:52                                 ` Prakash K. Cheemplavam
2004-12-08  0:37       ` Andrea Arcangeli
2004-12-08  0:54         ` Nick Piggin
2004-12-08  1:37           ` Andrea Arcangeli
2004-12-08  1:47             ` Nick Piggin
2004-12-08  2:09               ` Andrea Arcangeli
2004-12-08  2:11                 ` Andrew Morton
2004-12-08  2:22                   ` Andrea Arcangeli
2004-12-08  6:52               ` Jens Axboe
2004-12-08  2:00             ` Andrew Morton
2004-12-08  2:08               ` Andrew Morton
2004-12-08  6:55                 ` Jens Axboe
2004-12-08  2:20               ` Andrea Arcangeli
2004-12-08  2:25                 ` Andrew Morton [this message]
2004-12-08  2:33                   ` Andrea Arcangeli
2004-12-08  2:33                   ` Nick Piggin
2004-12-08  2:51                     ` Andrea Arcangeli
2004-12-08  3:02                       ` Nick Piggin
2004-12-08  6:58                     ` Jens Axboe
2004-12-08  7:14                       ` Nick Piggin
2004-12-08  7:20                         ` Jens Axboe
2004-12-08  7:29                           ` Nick Piggin
2004-12-08  7:32                             ` Jens Axboe
2004-12-08  7:30                           ` Andrew Morton
2004-12-08  7:36                             ` Jens Axboe
2004-12-08 13:48                         ` Jens Axboe
2004-12-08  6:55               ` Jens Axboe
2004-12-08  7:08                 ` Nick Piggin
2004-12-08  7:11                   ` Jens Axboe
2004-12-08  7:19                     ` Nick Piggin
2004-12-08  7:26                       ` Jens Axboe
2004-12-08  9:35                         ` Jens Axboe
2004-12-08 10:08                           ` Jens Axboe
2004-12-08 12:47                           ` Jens Axboe
2004-12-08 10:52                 ` Helge Hafting
2004-12-08 10:49                   ` Jens Axboe
2004-12-08  6:49           ` Jens Axboe
2004-12-02 14:28 ` Giuliano Pochini
2004-12-02 14:41   ` Jens Axboe
2004-12-04 13:05     ` Giuliano Pochini
  -- strict thread matches above, loose matches on Subject: below --
2004-12-03 20:52 Chuck Ebbert

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=20041207182557.23eed970.akpm@osdl.org \
    --to=akpm@osdl.org \
    --cc=andrea@suse.de \
    --cc=axboe@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nickpiggin@yahoo.com.au \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.