[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization
From: |
Dmitry Konishchev |
Subject: |
[Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization |
Date: |
Tue, 17 May 2011 18:33:40 +0400 |
Hi! I was wondering why qemu-img consumes so much CPU when it converts
one partially allocated qcow2 image to another qcow2 image and I've
written a patch which improves the situation a little.
I have an image:
> $ qemu-img info ubuntu.10.04.qcow2
> image: ubuntu.10.04.qcow2
> file format: qcow2
> virtual size: 20G (21474836480 bytes)
> disk size: 2.2G
> cluster_size: 65536
I create a new copy on write image:
> $ qemu-img create -f qcow2 -o backing_file=ubuntu.10.04.qcow2 volume.qcow2
> 100G
... and use it for a while.
Then I want to create a non-copy on write image from it to send it to someone:
> qemu-img convert -O qcow2 volume.qcow2 snapshot.qcow2
The last operation consumes a lot of CPU, so I run qemu-img under
profiler and realized, that most of CPU time is consumed by
is_not_zero() function. I had made a couple of optimizations on it and
got the following output for `time qemu-img convert -O qcow2
volume.qcow2 snapshot.qcow2`:
x86_64 machine:
Original qemu-img:
real 0m56.159s
user 0m34.670s
sys 0m12.079s
Patched qemu-img:
real 0m34.805s
user 0m18.445s
sys 0m12.552s
x86 machine:
Original qemu-img:
real 1m13.991s
user 0m24.734s
sys 0m6.604s
Patched qemu-img:
real 1m6.898s
user 0m16.021s
sys 0m6.700s
Please, see on the consumed user CPU time. I think that the
optimization worth it, so it will be awesome if you accept this patch
(see the attachment).
Thanks for your attention.
0001-is_not_zero-optimization-in-qemu-img.patch
Description: Text Data
- [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization,
Dmitry Konishchev <=
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Stefan Hajnoczi, 2011/05/17
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Dmitry Konishchev, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Stefan Hajnoczi, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Kevin Wolf, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Dmitry Konishchev, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Kevin Wolf, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Dmitry Konishchev, 2011/05/18
- [Qemu-devel] [PATCH] is_not_zero() optimization in qemu-img, Dmitry Konishchev, 2011/05/18
- Re: [Qemu-devel] [PATCH] is_not_zero() optimization in qemu-img, Kevin Wolf, 2011/05/18
- Re: [Qemu-devel] [PATCH] [qemu-img] CPU consuming optimization, Peter Maydell, 2011/05/18