[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v15 2/9] Add XBZRLE documentation
From: |
Orit Wasserman |
Subject: |
Re: [Qemu-devel] [PATCH v15 2/9] Add XBZRLE documentation |
Date: |
Thu, 05 Jul 2012 20:22:39 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0 |
On 07/05/2012 04:24 PM, Eric Blake wrote:
> On 07/05/2012 06:51 AM, Orit Wasserman wrote:
>> Signed-off-by: Orit Wasserman <address@hidden>
>> ---
>> docs/xbzrle.txt | 136
>> +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> 1 files changed, 136 insertions(+), 0 deletions(-)
>> create mode 100644 docs/xbzrle.txt
>>
>
>> +
>> +Example
>> +old buffer:
>> +1001 zeros
>> +05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 00 00 6b 00 6d
>> +3074 zeros
>
> This _still_ doesn't add up to 4096:
>
> 1001 + 20 + 3074 = 4095
>
>> +
>> +new buffer:
>> +1001 zeros
>> +01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 00 00 67 00 69
>> +3704 zeros
>
> Still a transposition error.
>
> Also, this still has the flaw that it is too weak of an example - the
> only unchanged bytes happen to also be zero bytes to begin with; it
> would be much nicer if the example included at least one non-zero byte
> that did not change between old and new.
>
>> +
>> +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
> ^^
> That says you have a zrun of 3 bytes, but the example only shows a zrun
> of 2 bytes.
>
> It feels like I'm pulling teeth to get a good example. If you will just
> squash in the following (hand-written) diff below, you will then have
> 4096 bytes in both old and new buffers, and your encoded buffer listing
> a zrun of 3 will be correct, plus you will be demonstrating a non-zero
> byte that remained unchanged.
>
> @@ ???,??? @@
> Example
> old buffer:
> 1001 zeros
> -05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 00 00 6b 00 6d
> +05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 68 00 00 6b 00 6d
> 3074 zeros
>
> new buffer:
> 1001 zeros
> -01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 00 00 67 00 69
> -3704 zeros
> +01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 68 00 00 67 00 69
> +3074 zeros
>
> encoded buffer:
>
I will use this example ,
thanks,
Orit
- [Qemu-devel] [PATCH v15 0/9] XBZRLE delta for live migration of large memory app, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 1/9] Add migration capabilities, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 4/9] Add uleb encoding/decoding functions, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 5/9] Change ram_save_block to return -1 if there are no more changes, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 6/9] Add xbzrle_encode_buffer and xbzrle_decode_buffer functions, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 3/9] Add cache handling functions, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 2/9] Add XBZRLE documentation, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 7/9] Add XBZRLE to ram_save_block and ram_save_live, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 8/9] Add set_cachesize command, Orit Wasserman, 2012/07/05
- [Qemu-devel] [PATCH v15 9/9] Add XBZRLE statistics, Orit Wasserman, 2012/07/05