qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PING PING] [PATCH v0 0/3] add zstd cluster compression


From: Denis Plotnikov
Subject: [Qemu-devel] [PING PING] [PATCH v0 0/3] add zstd cluster compression
Date: Thu, 27 Jun 2019 15:04:17 +0000


On 04.06.2019 10:56, Denis Plotnikov wrote:
> 
> 
> On 28.05.2019 17:37, Denis Plotnikov wrote:
>> The goal of the patch-set is to enable qcow2 to use zstd compression for
>> clusters. ZSTD provides better (de)compression performance than currently
>> used ZLIB. Using it will improve perforamnce (reduce compression time)
>> when the compressed clusters is used, e.g backup scenarios.
>>
>> Also, the patch-set extends qcow2 specification by adding compression_type
>> feature. The feature enables adding ZSTD and another compression algorithms
>> in the future.
>>
>> Here is some measurements ZSTD vs ZLIB:
>>
>> The test:
>>       Test compresses and decompresses qemu qcow2 image with just
>>       installed rhel-7.6 guest.
>>       Image cluster size: 64K. Image on disk size: 2.2G
>>       
>>       The test was conducted with brd disk to reduce the influence
>>       of disk subsystem to the test results.
>>       The results is given in seconds.
>>       
>>       compress cmd:
>>         time ./qemu-img convert -O qcow2 -c -o compression_type=[zlib|zstd]
>>                         src.img [zlib|zstd]_compressed.img
>>       decompress cmd
>>         time ./qemu-img convert -O qcow2
>>                         [zlib|zstd]_compressed.img uncompressed.img
>>
>>
>> The results:
>>                  compression               decompression
>>                zlib       zstd           zlib         zstd
>>       ------------------------------------------------------------
>>       real     65.5       16.3 (-75 %)    1.9          1.6 (-16 %)
>>       user     65.0       15.8            5.3          2.5
>>       sys       3.3        0.2            2.0          2.0
>>       
>>       Both ZLIB and ZSTD gave the same compression ratio: ~1.5
>>       compressed image size in both cases: ~1.4G
>>
>> Denis Plotnikov (3):
>>     qcow2: introduce compression type feature
>>     qcow2: add compression type processing
>>     qcow2: add zstd cluster compression
>>
>>    block/qcow2.c             | 240 ++++++++++++++++++++++++++++++++++++--
>>    block/qcow2.h             |  29 +++--
>>    configure                 |  26 +++++
>>    docs/interop/qcow2.txt    |  37 +++++-
>>    include/block/block_int.h |   1 +
>>    qapi/block-core.json      |  34 +++++-
>>    6 files changed, 348 insertions(+), 19 deletions(-)
>>
> 

-- 
Best,
Denis

reply via email to

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