configure | 26 ++++ hmp.c | 8 ++ migration/migration.c | 45 ++++++- migration/migration.h | 1 + migration/qemu-file.c | 39 ++---- migration/qemu-file.h | 18 ++- migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- qapi/migration.json | 26 +++- 8 files changed, 369 insertions(+), 85 deletions(-)
zstd date compression algorithm shows better performance on data compression. It might be useful to employ the algorithm in VM migration to reduce CPU usage. A user will be able to choose between those algorithms, therefor compress-type migration parameter is added. Here are some results of performance comparison zstd vs gzip: host: i7-4790 8xCPU @ 3.60GHz, 16G RAM migration to the same host VM: 2xVCPU, 8G RAM total 5G RAM used, memory populated with postgreqsl data produced by pgbench performance benchmark Threads: 1 compress – 1 decompress zstd provides slightly less compression ratio with almost the same CPU usage but copes with RAM compression roghly 2 times faster compression type zlib | zstd --------------------------------------------------------- compression level 1 5 | 1 5 compression ratio 6.92 7.05 | 6.69 6.89 cpu idle, % 82 83 | 86 80 time, sec 49 71 | 26 31 time diff to zlib, sec -25 -41 Threads: 8 compress – 2 decompress zstd provides the same migration time with less cpu consumption compression type none | gzip(zlib) | zstd ------------------------------------------------------------------------------ compression level - | 1 5 9 | 1 5 15 compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 time, sec 154 | 22 23 27 | 23 23 25 cpu idle, % 99 | 45 30 12 | 70 52 23 cpu idle diff to zlib | | -25% -22% -11% Denis Plotnikov (3): migration: rework compression code for adding more data compressors hmp: add compress-type parameter to migration parameters migration: add zstd compression configure | 26 ++++ hmp.c | 8 ++ migration/migration.c | 45 ++++++- migration/migration.h | 1 + migration/qemu-file.c | 39 ++---- migration/qemu-file.h | 18 ++- migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- qapi/migration.json | 26 +++- 8 files changed, 369 insertions(+), 85 deletions(-) -- 2.17.0
ping! On 26.02.2019 16:15, Denis Plotnikov wrote: > zstd date compression algorithm shows better performance on data compression. > It might be useful to employ the algorithm in VM migration to reduce CPU usage. > A user will be able to choose between those algorithms, therefor compress-type > migration parameter is added. > > Here are some results of performance comparison zstd vs gzip: > > host: i7-4790 8xCPU @ 3.60GHz, 16G RAM > migration to the same host > VM: 2xVCPU, 8G RAM total > 5G RAM used, memory populated with postgreqsl data > produced by pgbench performance benchmark > > > Threads: 1 compress – 1 decompress > > zstd provides slightly less compression ratio with almost the same > CPU usage but copes with RAM compression roghly 2 times faster > > compression type zlib | zstd > --------------------------------------------------------- > compression level 1 5 | 1 5 > compression ratio 6.92 7.05 | 6.69 6.89 > cpu idle, % 82 83 | 86 80 > time, sec 49 71 | 26 31 > time diff to zlib, sec -25 -41 > > > Threads: 8 compress – 2 decompress > > zstd provides the same migration time with less cpu consumption > > compression type none | gzip(zlib) | zstd > ------------------------------------------------------------------------------ > compression level - | 1 5 9 | 1 5 15 > compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 > time, sec 154 | 22 23 27 | 23 23 25 > cpu idle, % 99 | 45 30 12 | 70 52 23 > cpu idle diff to zlib | | -25% -22% -11% > > > Denis Plotnikov (3): > migration: rework compression code for adding more data compressors > hmp: add compress-type parameter to migration parameters > migration: add zstd compression > > configure | 26 ++++ > hmp.c | 8 ++ > migration/migration.c | 45 ++++++- > migration/migration.h | 1 + > migration/qemu-file.c | 39 ++---- > migration/qemu-file.h | 18 ++- > migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- > qapi/migration.json | 26 +++- > 8 files changed, 369 insertions(+), 85 deletions(-) > -- Best, Denis
ping ping On 04.03.2019 18:10, Denis Plotnikov wrote: > ping! > > On 26.02.2019 16:15, Denis Plotnikov wrote: >> zstd date compression algorithm shows better performance on data compression. >> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >> A user will be able to choose between those algorithms, therefor compress-type >> migration parameter is added. >> >> Here are some results of performance comparison zstd vs gzip: >> >> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >> migration to the same host >> VM: 2xVCPU, 8G RAM total >> 5G RAM used, memory populated with postgreqsl data >> produced by pgbench performance benchmark >> >> >> Threads: 1 compress – 1 decompress >> >> zstd provides slightly less compression ratio with almost the same >> CPU usage but copes with RAM compression roghly 2 times faster >> >> compression type zlib | zstd >> --------------------------------------------------------- >> compression level 1 5 | 1 5 >> compression ratio 6.92 7.05 | 6.69 6.89 >> cpu idle, % 82 83 | 86 80 >> time, sec 49 71 | 26 31 >> time diff to zlib, sec -25 -41 >> >> >> Threads: 8 compress – 2 decompress >> >> zstd provides the same migration time with less cpu consumption >> >> compression type none | gzip(zlib) | zstd >> ------------------------------------------------------------------------------ >> compression level - | 1 5 9 | 1 5 15 >> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >> time, sec 154 | 22 23 27 | 23 23 25 >> cpu idle, % 99 | 45 30 12 | 70 52 23 >> cpu idle diff to zlib | | -25% -22% -11% >> >> >> Denis Plotnikov (3): >> migration: rework compression code for adding more data compressors >> hmp: add compress-type parameter to migration parameters >> migration: add zstd compression >> >> configure | 26 ++++ >> hmp.c | 8 ++ >> migration/migration.c | 45 ++++++- >> migration/migration.h | 1 + >> migration/qemu-file.c | 39 ++---- >> migration/qemu-file.h | 18 ++- >> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >> qapi/migration.json | 26 +++- >> 8 files changed, 369 insertions(+), 85 deletions(-) >> > -- Best, Denis
ping ping ping! On 04.03.2019 18:10, Denis Plotnikov wrote: > ping! > > On 26.02.2019 16:15, Denis Plotnikov wrote: >> zstd date compression algorithm shows better performance on data compression. >> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >> A user will be able to choose between those algorithms, therefor compress-type >> migration parameter is added. >> >> Here are some results of performance comparison zstd vs gzip: >> >> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >> migration to the same host >> VM: 2xVCPU, 8G RAM total >> 5G RAM used, memory populated with postgreqsl data >> produced by pgbench performance benchmark >> >> >> Threads: 1 compress – 1 decompress >> >> zstd provides slightly less compression ratio with almost the same >> CPU usage but copes with RAM compression roghly 2 times faster >> >> compression type zlib | zstd >> --------------------------------------------------------- >> compression level 1 5 | 1 5 >> compression ratio 6.92 7.05 | 6.69 6.89 >> cpu idle, % 82 83 | 86 80 >> time, sec 49 71 | 26 31 >> time diff to zlib, sec -25 -41 >> >> >> Threads: 8 compress – 2 decompress >> >> zstd provides the same migration time with less cpu consumption >> >> compression type none | gzip(zlib) | zstd >> ------------------------------------------------------------------------------ >> compression level - | 1 5 9 | 1 5 15 >> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >> time, sec 154 | 22 23 27 | 23 23 25 >> cpu idle, % 99 | 45 30 12 | 70 52 23 >> cpu idle diff to zlib | | -25% -22% -11% >> >> >> Denis Plotnikov (3): >> migration: rework compression code for adding more data compressors >> hmp: add compress-type parameter to migration parameters >> migration: add zstd compression >> >> configure | 26 ++++ >> hmp.c | 8 ++ >> migration/migration.c | 45 ++++++- >> migration/migration.h | 1 + >> migration/qemu-file.c | 39 ++---- >> migration/qemu-file.h | 18 ++- >> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >> qapi/migration.json | 26 +++- >> 8 files changed, 369 insertions(+), 85 deletions(-) >> > -- Best, Denis
ping ping ping ping! On 11.03.2019 11:20, Denis Plotnikov wrote: > ping ping ping! > > On 04.03.2019 18:10, Denis Plotnikov wrote: >> ping! >> >> On 26.02.2019 16:15, Denis Plotnikov wrote: >>> zstd date compression algorithm shows better performance on data compression. >>> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >>> A user will be able to choose between those algorithms, therefor compress-type >>> migration parameter is added. >>> >>> Here are some results of performance comparison zstd vs gzip: >>> >>> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >>> migration to the same host >>> VM: 2xVCPU, 8G RAM total >>> 5G RAM used, memory populated with postgreqsl data >>> produced by pgbench performance benchmark >>> >>> >>> Threads: 1 compress – 1 decompress >>> >>> zstd provides slightly less compression ratio with almost the same >>> CPU usage but copes with RAM compression roghly 2 times faster >>> >>> compression type zlib | zstd >>> --------------------------------------------------------- >>> compression level 1 5 | 1 5 >>> compression ratio 6.92 7.05 | 6.69 6.89 >>> cpu idle, % 82 83 | 86 80 >>> time, sec 49 71 | 26 31 >>> time diff to zlib, sec -25 -41 >>> >>> >>> Threads: 8 compress – 2 decompress >>> >>> zstd provides the same migration time with less cpu consumption >>> >>> compression type none | gzip(zlib) | zstd >>> ------------------------------------------------------------------------------ >>> compression level - | 1 5 9 | 1 5 15 >>> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >>> time, sec 154 | 22 23 27 | 23 23 25 >>> cpu idle, % 99 | 45 30 12 | 70 52 23 >>> cpu idle diff to zlib | | -25% -22% -11% >>> >>> >>> Denis Plotnikov (3): >>> migration: rework compression code for adding more data compressors >>> hmp: add compress-type parameter to migration parameters >>> migration: add zstd compression >>> >>> configure | 26 ++++ >>> hmp.c | 8 ++ >>> migration/migration.c | 45 ++++++- >>> migration/migration.h | 1 + >>> migration/qemu-file.c | 39 ++---- >>> migration/qemu-file.h | 18 ++- >>> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >>> qapi/migration.json | 26 +++- >>> 8 files changed, 369 insertions(+), 85 deletions(-) >>> >> > -- Best, Denis
ping ping ping ping ping! On 18.03.2019 10:53, Denis Plotnikov wrote: > ping ping ping ping! > > On 11.03.2019 11:20, Denis Plotnikov wrote: >> ping ping ping! >> >> On 04.03.2019 18:10, Denis Plotnikov wrote: >>> ping! >>> >>> On 26.02.2019 16:15, Denis Plotnikov wrote: >>>> zstd date compression algorithm shows better performance on data compression. >>>> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >>>> A user will be able to choose between those algorithms, therefor compress-type >>>> migration parameter is added. >>>> >>>> Here are some results of performance comparison zstd vs gzip: >>>> >>>> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >>>> migration to the same host >>>> VM: 2xVCPU, 8G RAM total >>>> 5G RAM used, memory populated with postgreqsl data >>>> produced by pgbench performance benchmark >>>> >>>> >>>> Threads: 1 compress – 1 decompress >>>> >>>> zstd provides slightly less compression ratio with almost the same >>>> CPU usage but copes with RAM compression roghly 2 times faster >>>> >>>> compression type zlib | zstd >>>> --------------------------------------------------------- >>>> compression level 1 5 | 1 5 >>>> compression ratio 6.92 7.05 | 6.69 6.89 >>>> cpu idle, % 82 83 | 86 80 >>>> time, sec 49 71 | 26 31 >>>> time diff to zlib, sec -25 -41 >>>> >>>> >>>> Threads: 8 compress – 2 decompress >>>> >>>> zstd provides the same migration time with less cpu consumption >>>> >>>> compression type none | gzip(zlib) | zstd >>>> ------------------------------------------------------------------------------ >>>> compression level - | 1 5 9 | 1 5 15 >>>> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >>>> time, sec 154 | 22 23 27 | 23 23 25 >>>> cpu idle, % 99 | 45 30 12 | 70 52 23 >>>> cpu idle diff to zlib | | -25% -22% -11% >>>> >>>> >>>> Denis Plotnikov (3): >>>> migration: rework compression code for adding more data compressors >>>> hmp: add compress-type parameter to migration parameters >>>> migration: add zstd compression >>>> >>>> configure | 26 ++++ >>>> hmp.c | 8 ++ >>>> migration/migration.c | 45 ++++++- >>>> migration/migration.h | 1 + >>>> migration/qemu-file.c | 39 ++---- >>>> migration/qemu-file.h | 18 ++- >>>> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >>>> qapi/migration.json | 26 +++- >>>> 8 files changed, 369 insertions(+), 85 deletions(-) >>>> >>> >> > -- Best, Denis
ping! On 26.03.2019 18:51, Denis Plotnikov wrote: > ping ping ping ping ping! > > On 18.03.2019 10:53, Denis Plotnikov wrote: >> ping ping ping ping! >> >> On 11.03.2019 11:20, Denis Plotnikov wrote: >>> ping ping ping! >>> >>> On 04.03.2019 18:10, Denis Plotnikov wrote: >>>> ping! >>>> >>>> On 26.02.2019 16:15, Denis Plotnikov wrote: >>>>> zstd date compression algorithm shows better performance on data compression. >>>>> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >>>>> A user will be able to choose between those algorithms, therefor compress-type >>>>> migration parameter is added. >>>>> >>>>> Here are some results of performance comparison zstd vs gzip: >>>>> >>>>> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >>>>> migration to the same host >>>>> VM: 2xVCPU, 8G RAM total >>>>> 5G RAM used, memory populated with postgreqsl data >>>>> produced by pgbench performance benchmark >>>>> >>>>> >>>>> Threads: 1 compress – 1 decompress >>>>> >>>>> zstd provides slightly less compression ratio with almost the same >>>>> CPU usage but copes with RAM compression roghly 2 times faster >>>>> >>>>> compression type zlib | zstd >>>>> --------------------------------------------------------- >>>>> compression level 1 5 | 1 5 >>>>> compression ratio 6.92 7.05 | 6.69 6.89 >>>>> cpu idle, % 82 83 | 86 80 >>>>> time, sec 49 71 | 26 31 >>>>> time diff to zlib, sec -25 -41 >>>>> >>>>> >>>>> Threads: 8 compress – 2 decompress >>>>> >>>>> zstd provides the same migration time with less cpu consumption >>>>> >>>>> compression type none | gzip(zlib) | zstd >>>>> ------------------------------------------------------------------------------ >>>>> compression level - | 1 5 9 | 1 5 15 >>>>> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >>>>> time, sec 154 | 22 23 27 | 23 23 25 >>>>> cpu idle, % 99 | 45 30 12 | 70 52 23 >>>>> cpu idle diff to zlib | | -25% -22% -11% >>>>> >>>>> >>>>> Denis Plotnikov (3): >>>>> migration: rework compression code for adding more data compressors >>>>> hmp: add compress-type parameter to migration parameters >>>>> migration: add zstd compression >>>>> >>>>> configure | 26 ++++ >>>>> hmp.c | 8 ++ >>>>> migration/migration.c | 45 ++++++- >>>>> migration/migration.h | 1 + >>>>> migration/qemu-file.c | 39 ++---- >>>>> migration/qemu-file.h | 18 ++- >>>>> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >>>>> qapi/migration.json | 26 +++- >>>>> 8 files changed, 369 insertions(+), 85 deletions(-) >>>>> >>>> >>> >> > -- Best, Denis
ping! On 26.03.2019 18:51, Denis Plotnikov wrote: > ping ping ping ping ping! > > On 18.03.2019 10:53, Denis Plotnikov wrote: >> ping ping ping ping! >> >> On 11.03.2019 11:20, Denis Plotnikov wrote: >>> ping ping ping! >>> >>> On 04.03.2019 18:10, Denis Plotnikov wrote: >>>> ping! >>>> >>>> On 26.02.2019 16:15, Denis Plotnikov wrote: >>>>> zstd date compression algorithm shows better performance on data compression. >>>>> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >>>>> A user will be able to choose between those algorithms, therefor compress-type >>>>> migration parameter is added. >>>>> >>>>> Here are some results of performance comparison zstd vs gzip: >>>>> >>>>> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >>>>> migration to the same host >>>>> VM: 2xVCPU, 8G RAM total >>>>> 5G RAM used, memory populated with postgreqsl data >>>>> produced by pgbench performance benchmark >>>>> >>>>> >>>>> Threads: 1 compress – 1 decompress >>>>> >>>>> zstd provides slightly less compression ratio with almost the same >>>>> CPU usage but copes with RAM compression roghly 2 times faster >>>>> >>>>> compression type zlib | zstd >>>>> --------------------------------------------------------- >>>>> compression level 1 5 | 1 5 >>>>> compression ratio 6.92 7.05 | 6.69 6.89 >>>>> cpu idle, % 82 83 | 86 80 >>>>> time, sec 49 71 | 26 31 >>>>> time diff to zlib, sec -25 -41 >>>>> >>>>> >>>>> Threads: 8 compress – 2 decompress >>>>> >>>>> zstd provides the same migration time with less cpu consumption >>>>> >>>>> compression type none | gzip(zlib) | zstd >>>>> ------------------------------------------------------------------------------ >>>>> compression level - | 1 5 9 | 1 5 15 >>>>> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >>>>> time, sec 154 | 22 23 27 | 23 23 25 >>>>> cpu idle, % 99 | 45 30 12 | 70 52 23 >>>>> cpu idle diff to zlib | | -25% -22% -11% >>>>> >>>>> >>>>> Denis Plotnikov (3): >>>>> migration: rework compression code for adding more data compressors >>>>> hmp: add compress-type parameter to migration parameters >>>>> migration: add zstd compression >>>>> >>>>> configure | 26 ++++ >>>>> hmp.c | 8 ++ >>>>> migration/migration.c | 45 ++++++- >>>>> migration/migration.h | 1 + >>>>> migration/qemu-file.c | 39 ++---- >>>>> migration/qemu-file.h | 18 ++- >>>>> migration/ram.c | 291 ++++++++++++++++++++++++++++++++++-------- >>>>> qapi/migration.json | 26 +++- >>>>> 8 files changed, 369 insertions(+), 85 deletions(-) >>>>> >>>> >>> >> > -- Best, Denis
On 05.04.2019 14:40, Denis Plotnikov wrote: > ping! > > On 26.03.2019 18:51, Denis Plotnikov wrote: >> ping ping ping ping ping! >> >> On 18.03.2019 10:53, Denis Plotnikov wrote: >>> ping ping ping ping! >>> >>> On 11.03.2019 11:20, Denis Plotnikov wrote: >>>> ping ping ping! >>>> >>>> On 04.03.2019 18:10, Denis Plotnikov wrote: >>>>> ping! >>>>> >>>>> On 26.02.2019 16:15, Denis Plotnikov wrote: >>>>>> zstd date compression algorithm shows better performance on data >>>>>> compression. >>>>>> It might be useful to employ the algorithm in VM migration to >>>>>> reduce CPU usage. >>>>>> A user will be able to choose between those algorithms, therefor >>>>>> compress-type >>>>>> migration parameter is added. >>>>>> >>>>>> Here are some results of performance comparison zstd vs gzip: >>>>>> >>>>>> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >>>>>> migration to the same host >>>>>> VM: 2xVCPU, 8G RAM total >>>>>> 5G RAM used, memory populated with postgreqsl data >>>>>> produced by pgbench performance benchmark >>>>>> >>>>>> >>>>>> Threads: 1 compress – 1 decompress >>>>>> >>>>>> zstd provides slightly less compression ratio with almost the same >>>>>> CPU usage but copes with RAM compression roghly 2 times faster >>>>>> >>>>>> compression type zlib | zstd >>>>>> --------------------------------------------------------- >>>>>> compression level 1 5 | 1 5 >>>>>> compression ratio 6.92 7.05 | 6.69 6.89 >>>>>> cpu idle, % 82 83 | 86 80 >>>>>> time, sec 49 71 | 26 31 >>>>>> time diff to zlib, sec -25 -41 >>>>>> >>>>>> >>>>>> Threads: 8 compress – 2 decompress >>>>>> >>>>>> zstd provides the same migration time with less cpu consumption >>>>>> >>>>>> compression type none | gzip(zlib) | zstd >>>>>> ------------------------------------------------------------------------------ >>>>>> >>>>>> compression level - | 1 5 9 | 1 >>>>>> 5 15 >>>>>> compression ratio - | 6.94 6.99 7.14 | 6.64 >>>>>> 6.89 6.93 >>>>>> time, sec 154 | 22 23 27 | 23 >>>>>> 23 25 >>>>>> cpu idle, % 99 | 45 30 12 | 70 >>>>>> 52 23 >>>>>> cpu idle diff to zlib | | -25% >>>>>> -22% -11% >>>>>> >>>>>> >>>>>> Denis Plotnikov (3): >>>>>> migration: rework compression code for adding more data >>>>>> compressors >>>>>> hmp: add compress-type parameter to migration parameters >>>>>> migration: add zstd compression >>>>>> >>>>>> configure | 26 ++++ >>>>>> hmp.c | 8 ++ >>>>>> migration/migration.c | 45 ++++++- >>>>>> migration/migration.h | 1 + >>>>>> migration/qemu-file.c | 39 ++---- >>>>>> migration/qemu-file.h | 18 ++- >>>>>> migration/ram.c | 291 >>>>>> ++++++++++++++++++++++++++++++++++-------- >>>>>> qapi/migration.json | 26 +++- >>>>>> 8 files changed, 369 insertions(+), 85 deletions(-) >>>>>> >>>>> >>>> >>> >> > -- Best, Denis
Denis Plotnikov <dplotnikov@virtuozzo.com> wrote: > zstd date compression algorithm shows better performance on data compression. > It might be useful to employ the algorithm in VM migration to reduce CPU usage. > A user will be able to choose between those algorithms, therefor compress-type > migration parameter is added. > > Here are some results of performance comparison zstd vs gzip: Please, could you comment on the series: [PATCH v3 00/21] Multifd Migration Compression That series integrated zstd/zlib compression on top of multifd, advantages over "old" compression code are: - We don't have to copy data back and forth - The unit of compression is 512KB instead of 4kb - We "conserve" the compression state between packets (this is specially interesting for zstd, that uses dictionaries) > host: i7-4790 8xCPU @ 3.60GHz, 16G RAM > migration to the same host > VM: 2xVCPU, 8G RAM total > 5G RAM used, memory populated with postgreqsl data > produced by pgbench performance benchmark > > > Threads: 1 compress – 1 decompress > > zstd provides slightly less compression ratio with almost the same > CPU usage but copes with RAM compression roghly 2 times faster > > compression type zlib | zstd > --------------------------------------------------------- > compression level 1 5 | 1 5 > compression ratio 6.92 7.05 | 6.69 6.89 > cpu idle, % 82 83 | 86 80 > time, sec 49 71 | 26 31 > time diff to zlib, sec -25 -41 > > > Threads: 8 compress – 2 decompress > > zstd provides the same migration time with less cpu consumption > > compression type none | gzip(zlib) | zstd > ------------------------------------------------------------------------------ > compression level - | 1 5 9 | 1 5 15 > compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 > time, sec 154 | 22 23 27 | 23 23 25 > cpu idle, % 99 | 45 30 12 | 70 52 23 > cpu idle diff to zlib | | -25% -22% -11% I don't have handy results, but it looked for me like you: - zstd has a way better latency than zlib (i.e. the packet cames sooner) - And it compress much better On the migration test (best possible case for a compressor, as we are writting just one byte of each page, and we write the same value in all pages): - zlib: compress 512KB -> 2500 bytes - zstd: compess 512KB -> 52 bytes (yeap, I tested several times, it looked too small) See that I posted another patch to "delete" the old compression code. Why? - I have been unable to modify migration-test to test it and work reliablely (only way was to allow a really huge downtime) - Even with slow networking (1Gigabit) I got really mixed results, because as it is so slow, the guest continue dirtying memory, and in my tests it was never a winner Thanks, Juan.
Hi, Juan I'll read the series soon. Thanks for sending that to me! Denis On 24.01.2020 15:43, Juan Quintela wrote: > Denis Plotnikov <dplotnikov@virtuozzo.com> wrote: >> zstd date compression algorithm shows better performance on data compression. >> It might be useful to employ the algorithm in VM migration to reduce CPU usage. >> A user will be able to choose between those algorithms, therefor compress-type >> migration parameter is added. >> >> Here are some results of performance comparison zstd vs gzip: > Please, could you comment on the series: > > [PATCH v3 00/21] Multifd Migration Compression > > That series integrated zstd/zlib compression on top of multifd, > advantages over "old" compression code are: > - We don't have to copy data back and forth > - The unit of compression is 512KB instead of 4kb > - We "conserve" the compression state between packets (this is specially > interesting for zstd, that uses dictionaries) > >> host: i7-4790 8xCPU @ 3.60GHz, 16G RAM >> migration to the same host >> VM: 2xVCPU, 8G RAM total >> 5G RAM used, memory populated with postgreqsl data >> produced by pgbench performance benchmark >> >> >> Threads: 1 compress – 1 decompress >> >> zstd provides slightly less compression ratio with almost the same >> CPU usage but copes with RAM compression roghly 2 times faster >> >> compression type zlib | zstd >> --------------------------------------------------------- >> compression level 1 5 | 1 5 >> compression ratio 6.92 7.05 | 6.69 6.89 >> cpu idle, % 82 83 | 86 80 >> time, sec 49 71 | 26 31 >> time diff to zlib, sec -25 -41 >> >> >> Threads: 8 compress – 2 decompress >> >> zstd provides the same migration time with less cpu consumption >> >> compression type none | gzip(zlib) | zstd >> ------------------------------------------------------------------------------ >> compression level - | 1 5 9 | 1 5 15 >> compression ratio - | 6.94 6.99 7.14 | 6.64 6.89 6.93 >> time, sec 154 | 22 23 27 | 23 23 25 >> cpu idle, % 99 | 45 30 12 | 70 52 23 >> cpu idle diff to zlib | | -25% -22% -11% > I don't have handy results, but it looked for me like you: > - zstd has a way better latency than zlib (i.e. the packet cames sooner) > - And it compress much better > > On the migration test (best possible case for a compressor, as we are > writting just one byte of each page, and we write the same value in all > pages): > > - zlib: compress 512KB -> 2500 bytes > - zstd: compess 512KB -> 52 bytes (yeap, I tested several times, it > looked too small) > > See that I posted another patch to "delete" the old compression code. > Why? > - I have been unable to modify migration-test to test it and work > reliablely (only way was to allow a really huge downtime) > - Even with slow networking (1Gigabit) I got really mixed results, > because as it is so slow, the guest continue dirtying memory, and in > my tests it was never a winner > > Thanks, Juan. >
Patchew URL: https://patchew.org/QEMU/20190226131535.30361-1-dplotnikov@virtuozzo.com/ Hi, This series failed the docker-mingw@fedora build test. Please find the testing commands and their output below. If you have Docker installed, you can probably reproduce it locally. === TEST SCRIPT BEGIN === #!/bin/bash time make docker-test-mingw@fedora SHOW_ENV=1 J=14 NETWORK=1 === TEST SCRIPT END === Configure options: --enable-werror --target-list=x86_64-softmmu,aarch64-softmmu --prefix=/tmp/qemu-test/install --python=/usr/bin/python3 --cross-prefix=x86_64-w64-mingw32- --enable-trace-backends=simple --enable-gnutls --enable-nettle --enable-curl --enable-vnc --enable-bzip2 --enable-guest-agent ERROR: zstd check failed Make sure to have the zstd libs and headers installed. # QEMU configure log Wed Mar 6 11:31:58 UTC 2019 --- funcs: do_compiler do_cc compile_object check_define main lines: 92 122 619 636 0 x86_64-w64-mingw32-gcc -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c config-temp/qemu-conf.c:2:2: error: #error __linux__ not defined #error __linux__ not defined ^~~~~ --- funcs: do_compiler do_cc compile_object check_define main lines: 92 122 619 688 0 x86_64-w64-mingw32-gcc -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c config-temp/qemu-conf.c:2:2: error: #error __i386__ not defined #error __i386__ not defined ^~~~~ --- funcs: do_compiler do_cc compile_object check_define main lines: 92 122 619 691 0 x86_64-w64-mingw32-gcc -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c config-temp/qemu-conf.c:2:2: error: #error __ILP32__ not defined #error __ILP32__ not defined ^~~~~ --- lines: 92 128 923 0 x86_64-w64-mingw32-gcc -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -g -liberty /usr/lib/gcc/x86_64-w64-mingw32/8.2.0/../../../../x86_64-w64-mingw32/bin/ld: cannot find -liberty collect2: error: ld returned 1 exit status funcs: do_compiler do_cc compile_object main lines: 92 122 1825 0 --- funcs: do_compiler do_cc compile_prog cc_has_warning_flag main lines: 92 128 1906 1910 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Werror -Wstring-plus-int -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g x86_64-w64-mingw32-gcc: error: unrecognized command line option '-Wstring-plus-int'; did you mean '-Wstrict-aliasing'? funcs: do_compiler do_cc compile_prog cc_has_warning_flag main lines: 92 128 1906 1910 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Werror -Winitializer-overrides -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g x86_64-w64-mingw32-gcc: error: unrecognized command line option '-Winitializer-overrides'; did you mean '-Wno-suggest-override'? funcs: do_compiler do_cc compile_prog cc_has_warning_flag main lines: 92 128 1906 1910 0 --- lines: 92 122 2165 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -Werror -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c config-temp/qemu-conf.c: In function 'main': config-temp/qemu-conf.c:4:21: error: unknown conversion type character 'z' in format [-Werror=format=] return printf("%zu", SIZE_MAX); ^ config-temp/qemu-conf.c:4:19: error: too many arguments for format [-Werror=format-extra-args] return printf("%zu", SIZE_MAX); ^~~~~ config-temp/qemu-conf.c:4:21: error: unknown conversion type character 'z' in format [-Werror=format=] return printf("%zu", SIZE_MAX); ^ config-temp/qemu-conf.c:4:19: error: too many arguments for format [-Werror=format-extra-args] return printf("%zu", SIZE_MAX); ^~~~~ cc1: all warnings being treated as errors --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2177 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g config-temp/qemu-conf.c:1:10: fatal error: sys/socket.h: No such file or directory #include <sys/socket.h> ^~~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2248 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -llzo2 config-temp/qemu-conf.c:1:10: fatal error: lzo/lzo1x.h: No such file or directory #include <lzo/lzo1x.h> ^~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2267 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lsnappy config-temp/qemu-conf.c:1:10: fatal error: snappy-c.h: No such file or directory #include <snappy-c.h> ^~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2304 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -llzfse config-temp/qemu-conf.c:1:10: fatal error: lzfse.h: No such file or directory #include <lzfse.h> ^~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2387 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lxenstore -lxenctrl -lxenguest config-temp/qemu-conf.c:1:10: fatal error: xenctrl.h: No such file or directory #include <xenctrl.h> ^~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 2892 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lpam config-temp/qemu-conf.c:1:10: fatal error: security/pam_appl.h: No such file or directory #include <security/pam_appl.h> ^~~~~~~~~~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_object check_include main lines: 92 122 627 2907 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -c -o config-temp/qemu-conf.o config-temp/qemu-conf.c config-temp/qemu-conf.c:1:10: fatal error: ifaddrs.h: No such file or directory #include <ifaddrs.h> ^~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3045 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -Dmain=SDL_main -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/SDL2 -Wno-undef -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib -lmingw32 -lSDL2main -lSDL2 -mwindows config-temp/qemu-conf.c:5:2: error: #error No x11 support #error No x11 support ^~~~~ In file included from /usr/x86_64-w64-mingw32/sys-root/mingw/include/SDL2/SDL.h:32, from config-temp/qemu-conf.c:1: /usr/x86_64-w64-mingw32/sys-root/mingw/include/SDL2/SDL_main.h:111:17: error: conflicting types for 'SDL_main' #define main SDL_main ^~~~~~~~ config-temp/qemu-conf.c:7:5: note: in expansion of macro 'main' --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3060 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lrdmacm -libverbs -libumad config-temp/qemu-conf.c:1:10: fatal error: rdma/rdma_cma.h: No such file or directory #include <rdma/rdma_cma.h> ^~~~~~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3130 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lsasl2 config-temp/qemu-conf.c:1:10: fatal error: sasl/sasl.h: No such file or directory #include <sasl/sasl.h> ^~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3224 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g config-temp/qemu-conf.c:2:10: fatal error: xfs/xfs.h: No such file or directory #include <xfs/xfs.h> ^~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3248 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lvdeplug config-temp/qemu-conf.c:1:10: fatal error: libvdeplug.h: No such file or directory #include <libvdeplug.h> ^~~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3298 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lcap-ng config-temp/qemu-conf.c:1:10: fatal error: cap-ng.h: No such file or directory #include <cap-ng.h> ^~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3394 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lbrlapi config-temp/qemu-conf.c:1:10: fatal error: brlapi.h: No such file or directory #include <brlapi.h> ^~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3436 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -DNCURSES_WIDECHAR -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g config-temp/qemu-conf.c:2:10: fatal error: curses.h: No such file or directory #include <curses.h> ^~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3436 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -DNCURSES_WIDECHAR -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lpdcurses config-temp/qemu-conf.c:2:10: fatal error: curses.h: No such file or directory #include <curses.h> ^~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3489 0 x86_64-w64-mingw32-gcc -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g config-temp/qemu-conf.c:1:10: fatal error: bluetooth/bluetooth.h: No such file or directory #include <bluetooth/bluetooth.h> ^~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. --- funcs: do_compiler do_cc compile_prog main lines: 92 128 3609 0 x86_64-w64-mingw32-gcc -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -mms-bitfields -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/glib-2.0 -I/usr/x86_64-w64-mingw32/sys-root/mingw/lib/glib-2.0/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -m64 -mcx16 -mthreads -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/p11-kit-1 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -I/usr/x86_64-w64-mingw32/sys-root/mingw/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -m64 -g -lzstd config-temp/qemu-conf.c:1:10: fatal error: zstd.h: No such file or directory #include <zstd.h> ^~~~~~~~ compilation terminated. The full log is available at http://patchew.org/logs/20190226131535.30361-1-dplotnikov@virtuozzo.com/testing.docker-mingw@fedora/?type=message. --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
© 2016 - 2025 Red Hat, Inc.