Update the plugin to API_VERSION 2, and enable parallel threading model. With
unordered writes in qemu-img, and 8 threads in nbdkit, matching number of
parallel coroutines in qemu-img, I see about 50% speedup compared with current
master.
I tested this on a vm, using NFS storage provided by another vm, and accessing
ovirt-engine on a third vm. Results are not stable, and can vary by 100%
between runs. I'm comparing the best result from 3-5 runs.
We need to test these changes with real images, real servers, and real storage
to get more reliable results, but I think we see a clear trend. I will try to
test this RHV scale lab next week.
Nir Soffer (6):
v2v: output_rhv_upload: Require nbdkit >= 1.22
v2v: rhv-upload-plugin: Use API_VERSION 2
v2v: rhv-upload-plugin: Get imageio connections limits
v2v: rhv-upload-plugin: Support multiple connections
v2v: Use unordered writes in qemu-img convert
v2v: nbdkit: Match qemu-img number of parallel coroutines
v2v/nbdkit.ml | 3 +
v2v/output_rhv_upload.ml | 8 +-
v2v/rhv-upload-plugin.py | 295 ++++++++++++++++++++++++++-------------
v2v/v2v.ml | 1 +
4 files changed, 208 insertions(+), 99 deletions(-)
--
2.26.2