This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] RE: Is QoS of virtual disk not necessary?

To: "'Andi Kleen'" <andi@xxxxxxxxxxxxxx>
Subject: [Xen-devel] RE: Is QoS of virtual disk not necessary?
From: "Satoshi Uchida" <s-uchida@xxxxxxxxxxxxx>
Date: Tue, 28 Aug 2007 18:09:05 +0900
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 28 Aug 2007 02:09:47 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <p73d4xcyhbo.fsf@xxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <012001c7e628$96933aa0$4c87380a@xxxxxxxxxxxxxxxxxxx><C2F4B999.148C5%Keir.Fraser@xxxxxxxxxxxx> <p73d4xcyhbo.fsf@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acfmc+56YWQdYSTmTk6d66m9u7utDgCwK+Ew
> It would be probably easy to extend CFQ2 to use an user 
> passed identifier instead of per task for sharing if that's 
> your goal. For a kernel driver like blkback you could just 
> switch around multiple current->io_contexts.
> And if CFQ2 can manage hundreds of processes I don't see why 
> it couldn't manage hundreds of guests. Although you probably 
> should not put that many on a single device anyways; or 
> rather if it's a single device for that many it's likely a 
> RAM backed big storage box that doesn't need much scheduling anyways. 

CFQ2 is CFQ version 2 or new CFQ?
In linux documentation ( Documentation/block/ioprio.txt ), I see that CFQ is 
version 3.
 > With the introduction of cfq v3
If CFQ2 is CFQ version 2, which is current CFQ version 2? or version 3?

As you say, improving io_contexts may be possible to control I/O requests.
Maybe, in XenEnterprise, I guess that I/O requests is controlled by CFQ, namely,
I/O priority is set to blkback or balktap threads.

However, CFQ is implemented in only Linux and not in other OSs.
So, privileged domains or driver domains are restricted with only Linux.
In current, privileged domain (domain 0) is only Linux, but is this situation 
continued in future?
I think that users use also other OSs as driver domains.
Therefore, I suggested IOMGR.
By control mechanism is developed at backend drivers, I/O control setting will 
become OS independent.
-- But, it is needed to implement for other OSs.

> The claim that CFQ2 is desktop oriented in this thread 
> earlier is also not true. The desktop oriented scheduler is 
> more AS and CFQ2 is widely and successfully used in server 
> applications.

I read on web that "CFQ is made for multimedia desktop usage only” said Andrea.
(Perhaps version 1 ?)

And following document is found in Kconfig.iosched.
        tristate "CFQ I/O scheduler"
        default y
          The CFQ I/O scheduler tries to distribute bandwidth equally
          among all processes in the system. It should provide a fair
          working environment, suitable for desktop systems. 
          This is the default I/O scheduler.

Therefore, I seem that "CFQ is suitable for desktop system".
However, its report is old, and I don't know surely whether current CFQ is 
desktop oriented or not.

Satoshi UCHIDA

Xen-devel mailing list