Hi folks, I noticed that protobuf 3.4 includes the new 'table_driven_parsing' option for C++ code generation, but can't seem to find any docs about this feature.
>From a quick skim of the code, it seems like the goal here is to reduce the amount of per-PB generated code, and instead replace it with a generic method which can parse/serialize any protobuf based on a constant table indicating the field/type/class-offset mappings. My guess is the purpose here is to reduce code size and thus increase instruction cache locality for applications which handle either very large PBs or a large number of varying PB types, and potentially to unify the dynamic and generated parsing code paths. Is my understanding correct? Is there any speed benefit to using table-driven parsing for applications which deal with a relatively smaller set of unique PB types? Would be interested to hear about experiences at Google or elsewhere with this new option. -Todd -- 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 protobuf+unsubscr...@googlegroups.com. To post to this group, send email to protobuf@googlegroups.com. Visit this group at https://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.