On Mon, Sep 8, 2014 at 9:32 AM, hyaticua <[email protected]>
wrote:

> Reading the change log for 2.6.0, the C++ changes describe "Various speed
> optimizations".
>
> Does anyone know what kinds of optimizations were included in the release
> or what kind performance we should reasonably expect? I could not find
> anything in a naive google search.
>
The performance improvements we have made are small changes that optimize
very specific use cases/methods. For example, for the clear() method some
redundant operations has been collapsed into one (e.g., "has_bits &= ~0x1;"
and "has_bits &= ~0x2;" are merged into "has_bits = 0;"). The data members
of a generated class is also reordered to have the most-frequently accessed
members to appear early so they have smaller offsets. And a lot other such
kind of changes. For these specific cases we benchmarked (like the
performance of calling a clear() method repeatedly), the performance will
be improved by 1% to 3%. Overall though, I won't expect users to see
noticeable differences in their applications.

For the parsing performance of protobufs, the numbers we have are around
~500MB/s (i.e., parsing a 100-bytes message takes about 200 nano-seconds).
Serialization performance is on the same scale. Of course this result
depends on message definitions / data / platform, you'd better have your
own benchmarks for your own use case. I wound't expect the result to vary
too much though.


>
>
> Thanks,
> H
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.

Reply via email to