All of lore.kernel.org
 help / color / mirror / Atom feed
* CFQ I/O priorities only for reads?
@ 2011-11-28 14:42 Martin Steigerwald
  2011-11-28 14:45 ` Jens Axboe
  2011-11-28 15:24 ` [PATCH 3/3] Mention that the util-linux package provides an ionice command Martin Steigerwald
  0 siblings, 2 replies; 6+ messages in thread
From: Martin Steigerwald @ 2011-11-28 14:42 UTC (permalink / raw)
  To: Jens Axboe, linux-kernel; +Cc: Vivek Goyal

Hi jens und Vivek,

Vivek, I cc'd you, cause you wrote the new cfq-iosched.txt.


In trying to understand how I/O priorities actually really work, I tried to dd 
with

rm nullen-id ; sync ; /usr/bin/time ionice -c3 dd if=/dev/zero of=nullen-id 
count=500 bs=1M conv=fsync

versus

rm nullen-rl; sync ; /usr/bin/time ionice -c1 -n0 dd if=/dev/zero of=nullen-rl 
count=500 bs=1M conv=fsync

concurrently. No differences. At first I was puzzled, then I thought maybe 
direct I/O makes a difference. So I tried with oflag=direct.

And it does.

Then I actually read the documentation block/ioprio.txt (3.1 here):

> With the introduction of cfq v3 (aka cfq-ts or time sliced cfq), basic io
> priorities are supported for reads on files.  This enables users to io nice
> processes or process groups, similar to what has been possible with cpu
> scheduling for ages.  This document mainly details the current
> possibilities with cfq; other io schedulers do not support io priorities
> thus far.

According to it I/O priorities will even only work on reads. Is that correct? 
I mean they do work on reads, I tested it, but *only* on reads?

>From what I see here, it also works for direct I/O write requests

So from what I conclude is that CFQ I/O priorities work for all requests that 
are issued via synchronous system calls, but not for those issued via 
asynchronous calls, i. e. everything that goes through the pagecache.

Is that correct?


Vivek, one thing on cfq-iosched.txt: Could slice_idle=0 make sense on SSDs? 
Later on you write that there are some SSD optimizations in place that cut 
down idling already.


Thanks,
-- 
Martin Steigerwald - teamix GmbH - http://www.teamix.de
gpg: 19E3 8D42 896F D004 08AC A0CA 1E10 C593 0399 AE90

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-11-30 15:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-28 14:42 CFQ I/O priorities only for reads? Martin Steigerwald
2011-11-28 14:45 ` Jens Axboe
2011-11-28 15:19   ` [PATCH 1/1] Mention that I/O priorities also work on direct writes Martin Steigerwald
2011-11-30 15:01     ` Martin Steigerwald
2011-11-28 15:22   ` [PATCH 2/3] Replace io by I/O where approbiate Martin Steigerwald
2011-11-28 15:24 ` [PATCH 3/3] Mention that the util-linux package provides an ionice command Martin Steigerwald

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.