All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dushyant Bansal <cs5070214@cse.iitd.ac.in>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Re: KVM call agenda for Jan 25
Date: Fri, 25 Feb 2011 23:12:03 +0530	[thread overview]
Message-ID: <4D67E9EB.7090606@cse.iitd.ac.in> (raw)
In-Reply-To: <4D43F0F5.10206@cse.iitd.ac.in>

On Saturday 29 January 2011 04:20 PM, Dushyant Bansal wrote:
> Or this: which is faster, qemu-img convert -f<format>  -O<format>
> <src-image>  <dst-image>  or cp<src-image>  <dst-image>?  What about for
> raw images, shouldn't that be the same speed as cp(1)?  Poke around
> the source code, profile it, understand what it's doing, think about
> ways to improve it.  No need to do everything, just doing part of this
> will give you background on QEMU's block layer.
>
> Contributing patches is a good way get up to speed and show your
> skills.  If time doesn't permit that, just think about the problem and
> how you intend to solve it, and feel free to bounce ideas off me.
>    
I explored 'qemu-img create and convert' and got a basic understanding 
of how they work.

cp faster than qemu-img convert

For raw->raw
In cp, it just copies all the disk blocks actually occupied by the file.
And, with qemu-img convert, it checks all the sectors and copy those, 
which contains atleast one non-NUL byte.
The better performance of cp over qemu-img convert is the result of 
overhead of this checking.

I tried a few variations:
1. just copy all the sectors without checking
So, actual size becomes equal to virtual size.
2. In is_allocated_sectors,out of n sectors, if any sector has a non-NUL 
byte then break and copy all n sectors.
As expected, resultant raw image was quite large in size.

Looking forward to your comments.

Thanks,
Dushyant

  parent reply	other threads:[~2011-02-25 17:42 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-24 13:25 KVM call agenda for Jan 25 Chris Wright
2011-01-24 13:25 ` [Qemu-devel] " Chris Wright
2011-01-24 22:06 ` Anthony Liguori
2011-01-24 22:06   ` [Qemu-devel] " Anthony Liguori
2011-01-25 13:57   ` Luiz Capitulino
2011-01-25 14:02     ` Luiz Capitulino
2011-01-25 14:13       ` Stefan Hajnoczi
2011-01-25 14:13         ` Stefan Hajnoczi
2011-01-29 10:50         ` Dushyant Bansal
2011-01-29 13:16           ` Stefan Hajnoczi
2011-02-25 17:42           ` Dushyant Bansal [this message]
2011-02-26 14:05             ` Stefan Hajnoczi
2011-02-26 21:50               ` Dushyant Bansal
2011-02-27 10:49                 ` Stefan Hajnoczi
2011-02-28  7:36                   ` Markus Armbruster
2011-02-28 20:41                   ` Dushyant Bansal
2011-03-01  9:40                     ` Stefan Hajnoczi
2011-03-14 15:13                       ` Dushyant Bansal
2011-03-15 10:27                         ` Kevin Wolf
2011-03-16 14:17                           ` Dushyant Bansal
2011-03-16 17:47                           ` Stefan Hajnoczi
2011-03-17 10:07                             ` Kevin Wolf
2011-03-26 21:56                               ` Dushyant Bansal
2011-03-28 10:26                                 ` Kevin Wolf
2011-01-25 14:11     ` Aurelien Jarno
2011-01-25 14:11       ` Aurelien Jarno
2011-01-25 14:27       ` Anthony Liguori
2011-01-25 14:27         ` Anthony Liguori
2011-01-25 14:42       ` Kevin Wolf
2011-01-25 14:42         ` Kevin Wolf
2011-01-25 15:29         ` Aurelien Jarno
2011-01-25 14:26   ` Avi Kivity
2011-01-25 14:26     ` [Qemu-devel] " Avi Kivity
2011-01-25 14:35     ` Stefan Hajnoczi
2011-01-25 14:35       ` [Qemu-devel] " Stefan Hajnoczi
2011-01-26  9:58       ` Avi Kivity
2011-01-26  9:58         ` [Qemu-devel] " Avi Kivity

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=4D67E9EB.7090606@cse.iitd.ac.in \
    --to=cs5070214@cse.iitd.ac.in \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.com \
    /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.