[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3] migration/xbzrle: add encoding rate
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [PATCH v3] migration/xbzrle: add encoding rate |
Date: |
Thu, 4 Jun 2020 10:38:28 +0100 |
User-agent: |
Mutt/1.13.4 (2020-02-15) |
* Richard Henderson (richard.henderson@linaro.org) wrote:
> On 6/3/20 7:58 PM, Wei Wang wrote:
> > It is possible that encoded_size==0, but unencoded_size !=0. For example,
> > a page is written with the same data that it already has.
>
> That really contains 0 bytes?
> Not even the ones that say "same data"?
>
> You certainly have a magical compression algorithm there.
> Or bad accounting.
We just don't bother sending the page at all in the case it's not
changed; no headers, no nothing:
if (encoded_len == 0) {
trace_save_xbzrle_page_skipping();
return 0;
and that's xbzrle having correctly done it's job.
> > The encoding_rate is expected to reflect if the page is xbzrle encoding
> > friendly.
> > The larger, the more friendly, so 0 might not be a good representation here.
> >
> > Maybe, we could change UINT64_MAX above to "~0ULL" to avoid the issue?
>
> ~0ull is no different than UINT64_MAX -- indeed, they are *exactly* the same
> value -- and is not an exactly representible floating-point value.
>
> If unencoded_size != 0, and (somehow) encoded_size == 0, then
>
> unencoded_size / encoded_size = Inf
>
> which is indeed the limit of x -> 0, n / x.
>
> Which is *also* printable by %0.2f.
>
> I still contend that the middle if should be removed, and you should print out
> whatever's left. Either NaN or Inf is instructive. Certainly nothing in the
> middle cares about the actual value.
Hmm OK; I'll admit to not liking NaN/Inf in output.
Dave
>
> r~
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Richard Henderson, 2020/06/03
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Wei Wang, 2020/06/03
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Richard Henderson, 2020/06/03
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Wei Wang, 2020/06/04
- Re: [PATCH v3] migration/xbzrle: add encoding rate,
Dr. David Alan Gilbert <=
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Wei Wang, 2020/06/04
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Richard Henderson, 2020/06/04
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Wei Wang, 2020/06/04
- Re: [PATCH v3] migration/xbzrle: add encoding rate, Dr. David Alan Gilbert, 2020/06/05