Commit 0e54620
authored
zstd decode: Use compound decSymbol (#144)
* zstd decode: Use compound decSymbol
The compiler is not generating very nice code when decSymbol is separate values.
Use a compound value instead of a struct. This will allow all values to be transferred in a single register.
```
name old time/op new time/op delta
Decoder_DecodeAll/kppkn.gtb.zst-12 610µs ± 1% 599µs ± 1% -1.84% (p=0.000 n=10+10)
Decoder_DecodeAll/geo.protodata.zst-12 138µs ± 2% 136µs ± 0% -1.72% (p=0.000 n=10+9)
Decoder_DecodeAll/plrabn12.txt.zst-12 1.95ms ± 1% 1.90ms ± 0% -2.19% (p=0.000 n=10+7)
Decoder_DecodeAll/lcet10.txt.zst-12 1.46ms ± 2% 1.42ms ± 1% -2.48% (p=0.000 n=10+10)
Decoder_DecodeAll/asyoulik.txt.zst-12 506µs ± 1% 497µs ± 1% -1.83% (p=0.000 n=10+9)
Decoder_DecodeAll/alice29.txt.zst-12 655µs ± 1% 636µs ± 1% -2.97% (p=0.000 n=10+10)
Decoder_DecodeAll/html_x_4.zst-12 267µs ± 1% 261µs ± 1% -2.43% (p=0.000 n=10+9)
Decoder_DecodeAll/paper-100k.pdf.zst-12 25.0µs ± 1% 24.3µs ± 1% -2.61% (p=0.000 n=10+10)
Decoder_DecodeAll/fireworks.jpeg.zst-12 9.65µs ± 1% 9.61µs ± 0% ~ (p=0.250 n=10+9)
Decoder_DecodeAll/urls.10K.zst-12 1.67ms ± 1% 1.63ms ± 2% -2.29% (p=0.000 n=10+10)
Decoder_DecodeAll/html.zst-12 156µs ± 1% 155µs ± 1% -0.85% (p=0.014 n=10+10)
name old speed new speed delta
Decoder_DecodeAll/kppkn.gtb.zst-12 302MB/s ± 1% 308MB/s ± 1% +1.88% (p=0.000 n=10+10)
Decoder_DecodeAll/geo.protodata.zst-12 860MB/s ± 2% 875MB/s ± 0% +1.75% (p=0.000 n=10+9)
Decoder_DecodeAll/plrabn12.txt.zst-12 248MB/s ± 1% 253MB/s ± 0% +2.24% (p=0.000 n=10+7)
Decoder_DecodeAll/lcet10.txt.zst-12 293MB/s ± 2% 300MB/s ± 1% +2.54% (p=0.000 n=10+10)
Decoder_DecodeAll/asyoulik.txt.zst-12 247MB/s ± 1% 252MB/s ± 1% +1.86% (p=0.000 n=10+9)
Decoder_DecodeAll/alice29.txt.zst-12 232MB/s ± 1% 239MB/s ± 1% +3.06% (p=0.000 n=10+10)
Decoder_DecodeAll/html_x_4.zst-12 1.53GB/s ± 1% 1.57GB/s ± 1% +2.49% (p=0.000 n=10+9)
Decoder_DecodeAll/paper-100k.pdf.zst-12 4.10GB/s ± 1% 4.21GB/s ± 1% +2.68% (p=0.000 n=10+10)
Decoder_DecodeAll/fireworks.jpeg.zst-12 12.8GB/s ± 1% 12.8GB/s ± 0% ~ (p=0.286 n=10+9)
Decoder_DecodeAll/urls.10K.zst-12 420MB/s ± 1% 430MB/s ± 2% +2.35% (p=0.000 n=10+10)
Decoder_DecodeAll/html.zst-12 655MB/s ± 1% 661MB/s ± 1% +0.86% (p=0.015 n=10+10)
```1 parent 1a36bca commit 0e54620
3 files changed
+215
-168
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
966 | 966 | | |
967 | 967 | | |
968 | 968 | | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
969 | 972 | | |
970 | 973 | | |
971 | 974 | | |
972 | 975 | | |
973 | 976 | | |
974 | 977 | | |
975 | | - | |
976 | | - | |
977 | | - | |
978 | | - | |
979 | | - | |
980 | | - | |
981 | | - | |
982 | | - | |
983 | | - | |
984 | | - | |
985 | | - | |
986 | | - | |
987 | | - | |
988 | | - | |
989 | | - | |
990 | | - | |
991 | | - | |
992 | | - | |
993 | | - | |
994 | | - | |
995 | | - | |
996 | | - | |
997 | | - | |
998 | | - | |
999 | | - | |
1000 | | - | |
1001 | | - | |
1002 | | - | |
1003 | | - | |
1004 | | - | |
1005 | | - | |
1006 | | - | |
| 978 | + | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
| 1005 | + | |
| 1006 | + | |
| 1007 | + | |
| 1008 | + | |
| 1009 | + | |
| 1010 | + | |
1007 | 1011 | | |
1008 | 1012 | | |
1009 | 1013 | | |
1010 | | - | |
1011 | | - | |
1012 | | - | |
1013 | | - | |
1014 | | - | |
1015 | | - | |
1016 | | - | |
1017 | | - | |
1018 | | - | |
1019 | | - | |
1020 | | - | |
1021 | | - | |
1022 | | - | |
1023 | | - | |
1024 | | - | |
1025 | | - | |
| 1014 | + | |
| 1015 | + | |
| 1016 | + | |
| 1017 | + | |
| 1018 | + | |
| 1019 | + | |
| 1020 | + | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
1026 | 1031 | | |
1027 | 1032 | | |
1028 | 1033 | | |
1029 | | - | |
1030 | | - | |
1031 | | - | |
1032 | | - | |
1033 | | - | |
1034 | | - | |
1035 | | - | |
1036 | | - | |
1037 | | - | |
1038 | | - | |
1039 | | - | |
1040 | | - | |
1041 | | - | |
1042 | | - | |
1043 | | - | |
1044 | | - | |
1045 | | - | |
1046 | | - | |
1047 | | - | |
1048 | | - | |
1049 | | - | |
1050 | | - | |
1051 | | - | |
1052 | | - | |
1053 | | - | |
1054 | | - | |
1055 | | - | |
1056 | | - | |
1057 | | - | |
1058 | | - | |
1059 | | - | |
1060 | | - | |
| 1034 | + | |
| 1035 | + | |
| 1036 | + | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
| 1055 | + | |
| 1056 | + | |
| 1057 | + | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
| 1061 | + | |
| 1062 | + | |
| 1063 | + | |
| 1064 | + | |
| 1065 | + | |
1061 | 1066 | | |
1062 | 1067 | | |
1063 | 1068 | | |
1064 | 1069 | | |
1065 | 1070 | | |
| 1071 | + | |
| 1072 | + | |
1066 | 1073 | | |
1067 | 1074 | | |
1068 | 1075 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
187 | | - | |
188 | | - | |
189 | | - | |
190 | | - | |
191 | | - | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
192 | 241 | | |
193 | 242 | | |
194 | 243 | | |
195 | 244 | | |
196 | 245 | | |
197 | | - | |
| 246 | + | |
198 | 247 | | |
199 | 248 | | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
| 249 | + | |
204 | 250 | | |
205 | 251 | | |
206 | 252 | | |
207 | 253 | | |
208 | 254 | | |
209 | | - | |
| 255 | + | |
210 | 256 | | |
211 | 257 | | |
212 | 258 | | |
| |||
220 | 266 | | |
221 | 267 | | |
222 | 268 | | |
223 | | - | |
| 269 | + | |
224 | 270 | | |
225 | 271 | | |
226 | 272 | | |
| |||
235 | 281 | | |
236 | 282 | | |
237 | 283 | | |
238 | | - | |
| 284 | + | |
239 | 285 | | |
240 | 286 | | |
241 | 287 | | |
| |||
253 | 299 | | |
254 | 300 | | |
255 | 301 | | |
256 | | - | |
| 302 | + | |
257 | 303 | | |
258 | 304 | | |
259 | 305 | | |
260 | | - | |
| 306 | + | |
261 | 307 | | |
262 | 308 | | |
263 | 309 | | |
| |||
266 | 312 | | |
267 | 313 | | |
268 | 314 | | |
269 | | - | |
| 315 | + | |
270 | 316 | | |
271 | 317 | | |
272 | 318 | | |
| |||
279 | 325 | | |
280 | 326 | | |
281 | 327 | | |
282 | | - | |
283 | | - | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
284 | 331 | | |
285 | | - | |
| 332 | + | |
286 | 333 | | |
287 | 334 | | |
288 | 335 | | |
289 | | - | |
290 | | - | |
291 | | - | |
292 | | - | |
293 | | - | |
294 | | - | |
| 336 | + | |
| 337 | + | |
295 | 338 | | |
296 | 339 | | |
297 | 340 | | |
298 | 341 | | |
299 | 342 | | |
300 | | - | |
301 | 343 | | |
302 | 344 | | |
303 | 345 | | |
| |||
312 | 354 | | |
313 | 355 | | |
314 | 356 | | |
315 | | - | |
316 | | - | |
| 357 | + | |
| 358 | + | |
317 | 359 | | |
318 | 360 | | |
319 | 361 | | |
320 | 362 | | |
321 | 363 | | |
322 | | - | |
| 364 | + | |
323 | 365 | | |
324 | 366 | | |
325 | 367 | | |
326 | 368 | | |
327 | | - | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
328 | 375 | | |
329 | 376 | | |
330 | 377 | | |
331 | 378 | | |
332 | 379 | | |
333 | 380 | | |
334 | | - | |
335 | | - | |
336 | | - | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
337 | 384 | | |
0 commit comments