On 05/16/2012 05:59 AM, Orit Wasserman wrote: > Signed-off-by: Orit Wasserman <owass...@redhat.com> > --- > docs/xbzrle.txt | 97 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 files changed, 97 insertions(+), 0 deletions(-) > create mode 100644 docs/xbzrle.txt > > diff --git a/docs/xbzrle.txt b/docs/xbzrle.txt > new file mode 100644 > index 0000000..aafdb84 > --- /dev/null > +++ b/docs/xbzrle.txt > @@ -0,0 +1,97 @@ > +XBZRLE (Xor Based Zero Run Length Encoding) > +=========================================== > + > +Using XBZRLE (Xor Based Zero Run Length Encoding) allows for the reduction > of VM downtime > +and the total live-migration time of Virtual machines. It is particularly > useful for virtual machines running memory write intensive workloads that are > typical of large enterprise applications such as SAP ERP Systems, and > generally
Any reason you aren't wrapping at column 80? > +speaking for any application that uses a sparse memory update pattern. > + > +Instead of sending the changed guest memory page this solution will send a > compressed version of the updates, thus reducing the amount of data sent > during live migration. > +In order to be able to calculate the update, the previous memory pages > needed to be stored. Those pages are stored in a dedicated cache (hash table) > and are accessed by their address. > +The larger the cache size the better the chances are that the page has > already been stored in the cache. A Small cache size will result in high > cache miss rate. s/Small/small/ > +Usage > +====== > + > +1. Activate xbzrle > +2. Set the XBZRLE cache size - the cache size is in MBytes and should be a > power of 2. The cache default value is 64MBytes. > +3. start outgoing migration > + > +A typical usage scenario: > + {qemu} migrate_set_parameter xbzrle > + {qemu} migrate_set_cachesize 256m > + {qemu} migrate -d tcp:destination.host:4444 > + {qemu} info migrate > + ... > + transferred ram-duplicate: A kbytes > + transferred ram-normal: B kbytes > + transferred ram-xbrle: C kbytes > + overflow ram-xbrle: D pages > + cache-miss ram-xbrle: E pages > + > +cache-miss: the number of cache misses to date - high cache-miss rate > +indicates that the cache size is set too low. > +overflow: the number of overflows in the decoding which where the delta > could not be compressed. This can happen if the changes in the pages are too > large > +or there are many short changes for example change every second byte (half a > page). Can cachesize be modified during an in-progress migration? Do both source and destination need to agree on cache size? -- Eric Blake ebl...@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature