[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 10/11] Add XBZRLE statistics
From: |
Orit Wasserman |
Subject: |
Re: [Qemu-devel] [PATCH 10/11] Add XBZRLE statistics |
Date: |
Sun, 29 Jul 2012 10:10:20 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120717 Thunderbird/14.0 |
On 07/27/2012 01:48 AM, Eric Blake wrote:
> On 07/25/2012 08:50 AM, Orit Wasserman wrote:
>> Signed-off-by: Benoit Hudzia <address@hidden>
>> Signed-off-by: Petter Svard <address@hidden>
>> Signed-off-by: Aidan Shribman <address@hidden>
>> Signed-off-by: Orit Wasserman <address@hidden>
>> Signed-off-by: Juan Quintela <address@hidden>
>> ---
>> +++ b/qapi-schema.json
>> @@ -273,6 +273,26 @@
>> { 'type': 'MigrationStats',
>> 'data': {'transferred': 'int', 'remaining': 'int', 'total': 'int' ,
>> 'total_time': 'int', '*duplicate': 'int', '*normal': 'int' } }
>> +##
>> +# @XBZRLECacheStats
>> +#
>> +# Detailed XBZRLE migration cache statistics
>> +#
>> +# @cache_size: XBZRLE cache size
>
> s/cache_size/cache-size/, and so on throughout this struct (it is new,
> so it should use '-' instead of '_'); especially since you already made
> that change in the JSON itself.
>
ok
>> +#
>> +# @xbzrle_bytes: amount of bytes already transferred to the target VM
>> +#
>> +# @xbzrle_pages: amount of pages transferred to the target VM
>> +#
>> +# @xbzrle_cache_miss: number of cache miss
>> +#
>> +# @xbzrle_overflow: number of overflows
>> +#
>> +# Since: 1.2
>> +##
>> +{ 'type': 'XBZRLECacheStats',
>> + 'data': {'cache-size': 'int', '*xbzrle-bytes': 'int', '*xbzrle-pages':
>> 'int',
>> + '*xbzrle-cache-miss': 'int', '*xbzrle-overflow': 'int' } }
>
> Why are you marking four of the five fields optional here, but not in
> the text above? I don't think any of them should be optional.
If the migration is not active only cache size will be available (requested by
Luiz).
I will add it to the comment.
>
>>
>> ##
>> # @MigrationInfo
>> @@ -292,11 +312,15 @@
>> # status, only returned if status is 'active' and it is a block
>> # migration
>> #
>> +# @xbzrle-cache: #optional @XBZRLECacheStats containing detailed XBZRLE
>> +# migration statistics (since 1.2)
>
> Now _this_ field is indeed optional - it should appear in the output
> only when xbzrle is enabled. You may want to mention that in the
> description (just like the previous field mentions that it was only
> available for a block migration).
ok
>
>> +++ b/qmp-commands.hx
>> @@ -2106,10 +2106,16 @@ The main json-object contains the following:
>> - "transferred": amount transferred (json-int)
>> - "remaining": amount remaining (json-int)
>> - "total": total (json-int)
>> +- "cache": only present if "status" and XBZRLE is active.
>
> Naming mismatch; you named it 'xbzrle-cache' above.
ok
>
>> + It is a json-object with the following XBZRLE information:
>> + - "cache-size": XBZRLE cache size
>> + - "xbzrle-bytes": total XBZRLE bytes transferred
>
> Just so I'm clear, is xbzrle-bytes is the number of compressed bytes
> sent over the wire, or the number of uncompressed bytes? Likewise, at
> the top level, is 'total' the number of bytes sent over the wire, or the
> number of bytes after decompression?
xbzrle-bytes are the compressed bytes sent on the wire.
total is the total bytes sent on the wire (including xbzrle_bytes and
duplicates ...).
>
> That is, if I compare this field against 'total', which field will
> always be bigger? Knowing this will let me compute my percentage of
> savings due to compressed pages.
total will be always bigger.
>
>> + - "xbzrle-pages": number of XBZRLE compressed pages
>> + - "cache-miss": number of cache misses
>> + - "overflow": number of XBZRLE overflows
>> Examples:
>>
>> 1. Before the first migration
>> -
>> -> { "execute": "query-migrate" }
>
> Spurious whitespace change.
>
Thanks,
Orit
- Re: [Qemu-devel] [PATCH 11/11] Restart optimization on stage3 update version, (continued)
- [Qemu-devel] [PATCH 07/11] Add XBZRLE to ram_save_block and ram_save_live, Orit Wasserman, 2012/07/25
- [Qemu-devel] [PATCH 08/11] Add migrate_set_cachesize command, Orit Wasserman, 2012/07/25
- [Qemu-devel] [PATCH 06/11] Add xbzrle_encode_buffer and xbzrle_decode_buffer functions, Orit Wasserman, 2012/07/25
- [Qemu-devel] [PATCH 10/11] Add XBZRLE statistics, Orit Wasserman, 2012/07/25
- [Qemu-devel] [PATCH 09/11] Add migration accounting for normal and duplicate pages, Orit Wasserman, 2012/07/25