qemu-block
[Top][All Lists]
Advanced

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

Re: [Qemu-block] Disconecting /dev/nbdX leaves stale partitions and devi


From: Nir Soffer
Subject: Re: [Qemu-block] Disconecting /dev/nbdX leaves stale partitions and device
Date: Sat, 28 Jul 2018 00:34:29 +0300

On Fri, Jul 27, 2018 at 10:36 PM Richard W.M. Jones <address@hidden> wrote:
On Fri, Jul 27, 2018 at 09:53:32PM +0300, Nir Soffer wrote:
> I think performance is pretty good now, after I added efficient zeroing:
> https://gerrit.ovirt.org/c/92901/
> This should be available in 4.2.6.

This is great, thanks.

...
> I also tested uploading to raw disk using qemu-nbd on my dev setup with
> LIO storage over 1G nic.
> For reference, blkdiscard --zeroout takes 38.5 seconds on this setup.
>
> imageio example upload to /dev/nbd0[1]: 40.3 seconds
> qemu-img convert to /dev/nbd0: 61.5 seconds
> qemu-img convert to nbd+unix socket with unordered writes (-W): 87.3 seconds
> qemu-img convert to nbd+unix socket: 96.1 seconds

Interesting.  Did you try nbdkit?  I'm getting much greater
performance than qemu-nbd on my laptop - in fact it's comparable to
local copying:

$ rm -f /var/tmp/sock
$ truncate -s 6442450944 output
$ nbdkit file file=output -U /var/tmp/sock -f


$ time bash -c '(qemu-img convert -p -n fedora-27.img nbd:unix:/var/tmp/sock; sync)'
    (100.00/100%)

real    0m9.555s
user    0m0.143s
sys     0m0.578s


$ time bash -c '( cp fedora-27.img output2; sync )'

real   0m9.254s
user   0m0.005s
sys    0m0.846s


Maybe I'm making a mistake in my test somewhere?

Looks like you test kernl page cache. I was testing with qemu-nbd -n
since we always disable the cache when writing or reading from shared storage.

I tried nbdkit with LV on RHEL 7.5, and it failed trying to zero with fallocate.
Fixed in https://www.redhat.com/archives/libguestfs/2018-July/msg00072.html

On Fedora 28 it behaves like qemu-nbd:

# blkdiscard --zeroout --length 6442450944 /dev/27837a03-64f9-4f2b-abb0-daa2195b01ae/f8dd86f5-cc91-48ea-b192-c4e6af826f8a

# src/nbdkit -f plugins/file/.libs/nbdkit-file-plugin.so file=/dev/27837a03-64f9-4f2b-abb0-daa2195b01ae/f8dd86f5-cc91-48ea-b192-c4e6af826f8a -U /tmp/nbdkit.sock

# blkdiscard --zeroout --length 6442450944 /dev/27837a03-64f9-4f2b-abb0-daa2195b01ae/f8dd86f5-cc91-48ea-b192-c4e6af826f8a
# time bash -c "(qemu-img convert -p -n -t none -f raw -O raw /var/tmp/fedora-27.img nbd:unix:/tmp/nbdkit.sock; sync)"
    (100.00/100%)

real 1m26.518s
user 0m0.150s
sys 0m0.670s

# blkdiscard --zeroout --length 6442450944 /dev/27837a03-64f9-4f2b-abb0-daa2195b01ae/f8dd86f5-cc91-48ea-b192-c4e6af826f8a
# time bash -c "(qemu-img convert -p -n -t none -f raw -O raw -W /var/tmp/fedora-27.img nbd:unix:/tmp/nbdkit.sock; sync)"
    (100.00/100%)

real 1m26.366s
user 0m0.148s
sys 0m0.631s

Nir

reply via email to

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