From: Stefan Hajnoczi <stefanha@gmail.com>
To: "Shribman, Aidan" <aidan.shribman@sap.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH v2] XBRLE page delta compression for live migration of large memory apps
Date: Tue, 2 Aug 2011 19:17:44 +0100 [thread overview]
Message-ID: <20110802181744.GC13769@stefanha-thinkpad.localdomain> (raw)
In-Reply-To: <AB5A8C7661872E428D6B8E1C2DFA35085D848B5982@DEWDFECCR02.wdf.sap.corp>
On Tue, Aug 02, 2011 at 03:45:51PM +0200, Shribman, Aidan wrote:
> > From: Stefan Hajnoczi [mailto:stefanha@gmail.com]
> > Sent: Thursday, July 07, 2011 11:23 AM
> > To: Shribman, Aidan
> > Cc: qemu-devel@nongnu.org; Anthony Liguori
> > Subject: Re: [PATCH v2] XBRLE page delta compression for live
> > migration of large memory apps
> >
> > Any thoughts on reducing the overhead and making xbrle on by default?
>
> XBRLE was replaced by XBZRLE which now runs word-wise and only attempts RLE on zero sequences. In comparison to word-wise XBRLE it gives a more compact encoding roughly 30% smaller in size. When compared to XOR+LZO or XOR+Snappy encoding size is roughly 30% larger but XBZRLE is 2x-5x faster making it ideal for fast in-line encoding such as required for live-migration. XBZRLE demonstrated sustained speeds of about 1.6-2.2 GB/s per single core on a 64bit Linux 2.6.35 kernel.
>
> For now I would not switch XBZRLE on by default as it effects the network serialization format and would make the patched Qemu in-operable by default with older Qemu versions.
>
> Full benchmark results are brought for several scenarios, defined according to step in bytes between each two changed memoy areas (e.g. 1111 for the sparse scenario) and the length in bytes of each changed area (e.g. 12 for the SPARSE scenario)
>
> ==========================================================
> Scenario SPARSE with diff segment of step 1111 len 12
> ==========================================================
> xblzo: ENC{2.06s 997 MB/s 2.82%} DEC{1.40s 1462 MB/s 100.00%} .. ok
> xbsnappy: ENC{1.82s 1122 MB/s 6.14%} DEC{1.67s 1225 MB/s 100.00%} .. ok
> xbrle: ENC{9.28s 221 MB/s 3.08%} DEC{3.25s 630 MB/s 100.00%} .. ok
> xbzrle: ENC{0.96s 2142 MB/s 3.55%} DEC{0.73s 2817 MB/s 100.00%} .. ok
>
> ==========================================================
> Scenario MEDIUM with diff segment of step 701 len 33
> ==========================================================
> xblzo: ENC{2.50s 820 MB/s 6.34%} DEC{1.37s 1492 MB/s 100.00%} .. ok
> xbsnappy: ENC{2.25s 912 MB/s 9.27%} DEC{1.72s 1189 MB/s 100.00%} .. ok
> xbrle: ENC{9.35s 219 MB/s 10.31%} DEC{3.36s 610 MB/s 100.00%} .. ok
> xbzrle: ENC{1.03s 1994 MB/s 8.37%} DEC{0.73s 2809 MB/s 100.00%} .. ok
>
> ==========================================================
> Scenario DENSE with diff segment of step 203 len 41
> ==========================================================
> xblzo: ENC{4.08s 502 MB/s 21.37%} DEC{1.83s 1116 MB/s 100.00%} .. ok
> xbsnappy: ENC{4.80s 426 MB/s 22.80%} DEC{2.15s 953 MB/s 100.00%} .. ok
> xbrle: ENC{9.65s 212 MB/s 41.44%} DEC{3.70s 553 MB/s 100.00%} .. ok
> xbzrle: ENC{1.23s 1666 MB/s 31.92%} DEC{0.84s 2441 MB/s 100.00%} .. ok
>
> ==========================================================
> Scenario VERY-DENSE with diff segment of step 121 len 43
> ==========================================================
> xblzo: ENC{5.59s 366 MB/s 32.29%} DEC{2.36s 866 MB/s 100.00%} .. ok
> xbsnappy: ENC{6.74s 304 MB/s 33.46%} DEC{2.69s 762 MB/s 100.00%} .. ok
> xbrle: ENC{9.84s 208 MB/s 72.78%} DEC{4.22s 486 MB/s 100.00%} .. ok
> xbzrle: ENC{1.18s 1730 MB/s 54.92%} DEC{0.94s 2167 MB/s 100.00%} .. ok
xbrle -> xbzrle is a great improvement, nice!
Stefan
next prev parent reply other threads:[~2011-08-02 18:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-06 12:01 [Qemu-devel] [PATCH v2] XBRLE page delta compression for live migration of large memory apps Shribman, Aidan
2011-07-07 8:23 ` Stefan Hajnoczi
2011-08-02 13:45 ` Shribman, Aidan
2011-08-02 18:17 ` Stefan Hajnoczi [this message]
2011-07-07 21:07 ` Stefan Hajnoczi
2011-08-02 13:45 ` Shribman, Aidan
2011-08-02 15:53 ` Stefan Hajnoczi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110802181744.GC13769@stefanha-thinkpad.localdomain \
--to=stefanha@gmail.com \
--cc=aidan.shribman@sap.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).