]> git.proxmox.com Git - mirror_qemu.git/blobdiff - docs/xbzrle.txt
plugins: extend execlog to filter matches
[mirror_qemu.git] / docs / xbzrle.txt
index cc3a26a91dd6c21bbd1a9050cf0d2aac15fb7813..bcb3f0c901a098aaed50c108fdea76a1f1a261f2 100644 (file)
@@ -42,7 +42,7 @@ nzrun = length byte...
 length = uleb128 encoded integer
 
 On the sender side XBZRLE is used as a compact delta encoding of page updates,
-retrieving the old page content from the cache (default size of 512 MB). The
+retrieving the old page content from the cache (default size of 64MB). The
 receiving side uses the existing page's content and XBZRLE to decode the new
 page's content.
 
@@ -71,6 +71,14 @@ encoded buffer:
 encoded length 24
 e9 07 0f 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 03 01 67 01 01 69
 
+Cache update strategy
+=====================
+Keeping the hot pages in the cache is effective for decreasing cache
+misses. XBZRLE uses a counter as the age of each page. The counter will
+increase after each ram dirty bitmap sync. When a cache conflict is
+detected, XBZRLE will only evict pages in the cache that are older than
+a threshold.
+
 Usage
 ======================
 1. Verify the destination QEMU version is able to decode the new format.
@@ -82,7 +90,7 @@ Usage
 
 3. Set the XBZRLE cache size - the cache size is in MBytes and should be a
 power of 2. The cache default value is 64MBytes. (on source only)
-    {qemu} migrate_set_cache_size 256m
+    {qemu} migrate_set_parameter xbzrle-cache-size 256m
 
 4. Start outgoing migration
     {qemu} migrate -d tcp:destination.host:4444
@@ -99,10 +107,12 @@ power of 2. The cache default value is 64MBytes. (on source only)
     cache size: H bytes
     xbzrle transferred: I kbytes
     xbzrle pages: J pages
-    xbzrle cache miss: K
-    xbzrle overflow : L
+    xbzrle cache miss: K pages
+    xbzrle cache miss rate: L
+    xbzrle encoding rate: M
+    xbzrle overflow: N
 
-xbzrle cache-miss: the number of cache misses to date - high cache-miss rate
+xbzrle cache miss: the number of cache misses to date - high cache-miss rate
 indicates that the cache size is set too low.
 xbzrle 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