Damien Neil
ce8f7f6353
internal/impl: inline small tag decoding
Inline varint decoding of small (1- and 2-byte) field tags in the
fast-path unmarshaler.
name old time/op new time/op delta
EmptyMessage/Wire/Unmarshal 40.6ns ± 1% 40.2ns ± 1% -1.02% (p=0.000 n=37+35)
EmptyMessage/Wire/Unmarshal-12 6.77ns ± 2% 7.13ns ± 5% +5.32% (p=0.000 n=37+37)
RepeatedInt32/Wire/Unmarshal 9.46µs ± 1% 6.57µs ± 1% -30.56% (p=0.000 n=38+39)
RepeatedInt32/Wire/Unmarshal-12 1.50µs ± 2% 1.05µs ± 2% -30.00% (p=0.000 n=39+37)
Required/Wire/Unmarshal 371ns ± 1% 258ns ± 1% -30.44% (p=0.000 n=38+32)
Required/Wire/Unmarshal-12 60.3ns ± 1% 44.3ns ± 2% -26.45% (p=0.000 n=38+36)
Change-Id: Ie80415dea8cb6b840eafa52f0572046a1910a9b1
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/216419
Reviewed-by: Joe Tsai <joetsai@google.com>
2020-01-26 22:23:05 +00:00
..
2020-01-06 19:10:59 +00:00
2020-01-07 21:36:47 +00:00
2020-01-22 20:57:14 +00:00
2020-01-22 00:22:58 +00:00
2019-07-08 20:12:42 +00:00
2019-07-08 20:12:42 +00:00
2020-01-22 20:57:14 +00:00
2020-01-22 00:22:46 +00:00
2020-01-24 20:27:57 +00:00
2020-01-22 00:22:58 +00:00
2020-01-22 00:22:58 +00:00
2019-07-08 20:12:42 +00:00
2019-11-26 22:58:51 +00:00
2019-12-17 22:14:17 +00:00
2019-09-17 21:33:16 +00:00
2020-01-26 22:23:05 +00:00
2020-01-22 20:52:17 +00:00
2019-10-07 21:08:26 +00:00
2019-10-07 21:08:26 +00:00
2020-01-12 08:13:18 +00:00
2020-01-07 21:36:47 +00:00
2019-12-09 18:59:42 +00:00
2020-01-12 08:13:18 +00:00
2020-01-12 09:18:34 +00:00
2019-03-22 20:01:07 +00:00
2019-12-10 16:55:03 +00:00
2019-09-19 23:27:15 +00:00
2020-01-12 08:13:18 +00:00
2019-11-06 18:17:25 +00:00
2020-01-22 20:52:17 +00:00
2020-01-12 08:13:18 +00:00
2019-11-26 22:58:51 +00:00
2019-12-16 21:49:33 +00:00
2020-01-12 08:13:18 +00:00
2019-11-05 18:31:30 +00:00
2019-12-09 22:57:38 +00:00
2019-10-04 17:07:45 +00:00
2019-10-04 17:07:45 +00:00
2020-01-24 20:27:57 +00:00
2019-10-04 17:07:45 +00:00