mirror of
https://github.com/protocolbuffers/protobuf-go.git
synced 2025-01-29 09:32:38 +00:00
adbbc8ec47
Inline decoding of 1- and 2-byte varints in generated unmarshal functions. name old time/op new time/op delta EmptyMessage/Wire/Unmarshal 40.2ns ± 2% 40.1ns ± 1% ~ (p=0.355 n=37+37) EmptyMessage/Wire/Unmarshal-12 7.12ns ± 1% 6.87ns ± 1% -3.49% (p=0.000 n=37+39) RepeatedInt32/Wire/Unmarshal 6.46µs ± 1% 5.78µs ± 1% -10.65% (p=0.000 n=35+33) RepeatedInt32/Wire/Unmarshal-12 1.05µs ± 2% 0.98µs ± 2% -6.79% (p=0.000 n=33+40) Required/Wire/Unmarshal 251ns ± 1% 216ns ± 1% -13.69% (p=0.000 n=38+36) Required/Wire/Unmarshal-12 42.4ns ± 1% 37.7ns ± 2% -11.02% (p=0.000 n=37+39) Change-Id: Iecfc38fcae00979b89a093368821cca7f2357578 Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/216421 Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>