qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] hw/vexpress: set default block type to SD


From: Aurelien Jarno
Subject: Re: [Qemu-devel] [PATCH] hw/vexpress: set default block type to SD
Date: Sun, 17 Mar 2013 11:17:49 +0100
User-agent: Mutt/1.5.21 (2010-09-15)

On Sun, Mar 17, 2013 at 12:23:31AM +0000, Peter Maydell wrote:
> On 17 March 2013 00:04, Aurelien Jarno <address@hidden> wrote:
> > On Fri, Mar 15, 2013 at 03:45:11PM +0000, Peter Maydell wrote:
> >> On 15 March 2013 15:42, Aurelien Jarno <address@hidden> wrote:
> >> > On Fri, Mar 15, 2013 at 03:35:48PM +0000, Peter Maydell wrote:
> >> >> I'm not convinced this is a good thing -- I think you should have
> >> >> to know that you're attaching an SD card and not a hard disk,
> >> >> because the performance is much worse. In particular if you
> >> >> don't specify 'cache=writeback' your performance will be
> >> >> dreadful, so you need to do something different from hard
> >> >> disks anyhow.
> >>
> >> > Being a good thing or not, the current code is wrong: the default
> >> > interface type is set to SCSI (I guess it has been copied from
> >> > versatilepb.c), while the vexpress machine has no SCSI
> >> > interface.
> >>
> >> I agree we shouldn't be claiming to have a scsi interface, yes.
> >>
> >
> > Does it means you are going to accept the patch?
> 
> No, I meant I'd accept a patch which stops us reporting that
> we have a SCSI interface when we don't.

That's what the patch does, by correctly saying it's an SD interface and
not a SCSI one.

> > In anycase let me give you some more arguments in favor of it. Even if
> > you believe that users should always provide a cache= argument, I don't
> > think it should be done by setting a wrong default interfaces. Users are
> > likely to simply google for a command line and paste it without
> > understanding the consequences of cache=writeback. The way to go there
> > is to make the writeback argument mandatory for some machines if you
> > really believe it's need by all users.
> 
> writeback shouldn't be mandatory randomly for some machines and
> interfaces and not others.

I don't get your point there. You don't want to make it mandatory at the
QEMU level, but you want users to understand they have to specify it for
some machines, by making if= mandatory randomly for some machines and
not others?

> > That said I don't share this opinion. I have made some tests comparing
> > a versatile and a vexpress machine, running Debian Wheezy, armel for the
> > first one and armhf for the second one. This has been done on a Core i5
> > 2500 machine with a ST2000DM001 hard drive. Here are the results:
> >
> >                           | boot | install build-dep | build lm-sensors |
> >   ------------------------+------+-------------------+------------------+
> >   versatile               | 1:09 |             2:27  |             4:09 |
> >   versatile cache=wb      | 1:08 |             2:25  |             3:44 |
> >   vexpress                | 1:11 |             3:07  |             3:49 |
> >   vexpress cache=wb       | 1:07 |             3:07  |             3:47 |
> >
> >   Note: the install build-dep time doesn't include the download time.
> >
> > So even if the two systems are not directly comparable, it shows that
> > the SD card emulation is indeed slower than the hard disk one. That said
> > while cache=writeback makes a difference for the versatile platform, it
> > doesn't really change anything for the vexpress platform. Therefore
> > forcing the users to add this option doesn't seems to be a good idea.
> 
> Maybe the default has changed. Certainly it used to be the case that
> sd card emulation was incredibly slow without some kind of caching
> option, because it writes 512 bytes at a time, synchronously, and
> the SD card interface has no way for the guest to say 'write; write;
> write; ok now make sure that's all committed'.
> 

I don't know what has changed, but with the current code the argument
saying that the vexpress machine without cache=writeback has dreadful
performance is wrong.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
address@hidden                 http://www.aurel32.net



reply via email to

[Prev in Thread] Current Thread [Next in Thread]