public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ric Wheeler <ric@emc.com>
To: Helge Hafting <helge.hafting@aitel.hist.no>
Cc: Jens Axboe <jens.axboe@oracle.com>,
	Jakob Oestergaard <jakob@unthought.net>,
	Arjan van de Ven <arjan@infradead.org>,
	"Phetteplace, Thad (GE Healthcare,
	consultant)"  <Thad.Phetteplace@ge.com>,
	linux-kernel@vger.kernel.org
Subject: Re: Bandwidth Allocations under CFQ I/O Scheduler
Date: Wed, 18 Oct 2006 07:23:58 -0400	[thread overview]
Message-ID: <45360ECE.3070107@emc.com> (raw)
In-Reply-To: <45360952.5020307@aitel.hist.no>


Helge Hafting wrote:

> Jens Axboe wrote:
>
>> While that may make some sense internally, the exported interface would
>> never be workable like that. It needs to be simple, "give me foo kb/sec
>> with max latency bar for this file", with an access pattern or assumed
>> sequential io.
>>
>> Nobody speaks of iops/sec except some silly benchmark programs. I know
>> that you are describing pseudo-iops, but it still doesn't make it more
>> clear.
>> Things aren't as simple
>>   
>
> How about "give me 10% of total io capacity?"  People understand
> this, and the io scheduler can then guarantee this by ensuring
> that the process gets 1 out of 10 io requests as long as it
> keeps submitting enough.
>
> The admin can then set a reasonable percentage depending on
> the machine's capacity.
>
> Helge Hafting

The tricky part is that when you mix up workloads, you blow the drive's 
ability to minimize head seek & rotational latency.  For example, I have 
measured almost a 10x decrease when I mix one serious workload (reading 
each file in a large file system as fast as you can) with a moderate 
write workload.

All a long winded way of saying that what we might be able to do in the 
worst case is to give an even portion of that worst case IO capability 
which is  itself only 10% of the best case  (i.e., 1% of the non-shared 
best case) ;-)

Some of the high ends arrays (like the EMC Symmetrix, IBM Shark, Hitachi 
boxes, etc) are much better at this sharing since they have massive 
amounts of nonvolatile DRAM & lots of algorithmic ability to tease apart 
individual streams internally.  Note that they have to do this since 
they are connected up to many different hosts.

It might be interesting to thinking about how we would tweak things for 
this specific class of arrays as a special case,

ric


      parent reply	other threads:[~2006-10-18 11:24 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-16 20:46 Bandwidth Allocations under CFQ I/O Scheduler Phetteplace, Thad (GE Healthcare, consultant)
2006-10-17  1:24 ` Arjan van de Ven
2006-10-17 13:23   ` Jens Axboe
2006-10-17 14:37     ` Ric Wheeler
2006-10-17 14:47       ` Jens Axboe
2006-10-17 14:46     ` Phetteplace, Thad (GE Healthcare, consultant)
2006-10-18  8:00     ` Jakob Oestergaard
2006-10-18  9:40       ` Arjan van de Ven
2006-10-18 11:30         ` Jakob Oestergaard
2006-10-18 11:49           ` Jens Axboe
2006-10-18 12:23             ` Jakob Oestergaard
2006-10-18 12:42               ` Alan Cox
2006-10-18 12:44                 ` Jens Axboe
2006-10-18 12:55                   ` Nick Piggin
2006-10-18 13:04                     ` Jens Axboe
2006-10-18 13:39                       ` Jakob Oestergaard
2006-10-18 13:51                       ` Paulo Marques
2006-10-19 12:22                         ` Jens Axboe
2006-10-18 13:37                     ` Jakob Oestergaard
2006-10-18 12:44                 ` Jakob Oestergaard
2006-10-18 12:42               ` Jens Axboe
2006-10-18 13:35                 ` Jakob Oestergaard
2006-10-18  9:51       ` Jens Axboe
2006-10-18 11:00         ` Helge Hafting
2006-10-18 11:14           ` Jens Axboe
2006-10-18 11:23           ` Ric Wheeler [this message]

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=45360ECE.3070107@emc.com \
    --to=ric@emc.com \
    --cc=Thad.Phetteplace@ge.com \
    --cc=arjan@infradead.org \
    --cc=helge.hafting@aitel.hist.no \
    --cc=jakob@unthought.net \
    --cc=jens.axboe@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    /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