Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
huff0: Speed up compression of short blocks (#744)
Tells the compiler to merge loads and stores of nodeElts. name old speed new speed delta Compress4XReuseNone/digits-8 433MB/s ± 1% 434MB/s ± 0% ~ (p=0.393 n=10+10) Compress4XReuseNone/gettysburg-8 245MB/s ± 1% 254MB/s ± 1% +3.55% (p=0.000 n=10+10) Compress4XReuseNone/twain-8 363MB/s ± 0% 363MB/s ± 0% ~ (p=0.360 n=8+10) Compress4XReuseNone/low-ent.10k-8 465MB/s ± 0% 467MB/s ± 0% +0.32% (p=0.008 n=9+10) Compress4XReuseNone/superlow-ent-10k-8 305MB/s ± 2% 304MB/s ± 1% ~ (p=0.143 n=10+10) Compress4XReuseNone/case1-8 13.1MB/s ± 1% 14.6MB/s ± 2% +11.44% (p=0.000 n=10+10) Compress4XReuseNone/case2-8 10.9MB/s ± 1% 12.3MB/s ± 2% +12.28% (p=0.000 n=10+9) Compress4XReuseNone/case3-8 11.5MB/s ± 1% 12.9MB/s ± 2% +12.37% (p=0.000 n=10+10) Compress4XReuseNone/pngdata.001-8 300MB/s ± 0% 298MB/s ± 2% ~ (p=0.762 n=8+10) Compress4XReuseNone/normcount2-8 31.5MB/s ± 1% 33.7MB/s ± 2% +6.87% (p=0.000 n=9+10) Compress4XReuseAllow/digits-8 435MB/s ± 1% 432MB/s ± 2% ~ (p=0.043 n=10+10) Compress4XReuseAllow/gettysburg-8 272MB/s ± 1% 281MB/s ± 1% +3.19% (p=0.000 n=10+10) Compress4XReuseAllow/twain-8 363MB/s ± 0% 361MB/s ± 1% ~ (p=0.150 n=9+10) Compress4XReuseAllow/low-ent.10k-8 469MB/s ± 1% 469MB/s ± 0% ~ (p=0.616 n=10+10) Compress4XReuseAllow/superlow-ent-10k-8 305MB/s ± 0% 306MB/s ± 0% +0.44% (p=0.001 n=9+9) Compress4XReuseAllow/case1-8 15.8MB/s ± 0% 18.0MB/s ± 2% +13.88% (p=0.000 n=9+10) Compress4XReuseAllow/case2-8 13.3MB/s ± 0% 15.4MB/s ± 1% +15.86% (p=0.000 n=9+10) Compress4XReuseAllow/case3-8 14.1MB/s ± 0% 15.8MB/s ± 1% +12.15% (p=0.000 n=10+8) Compress4XReuseAllow/pngdata.001-8 302MB/s ± 1% 304MB/s ± 0% +0.68% (p=0.000 n=9+10) Compress4XReuseAllow/normcount2-8 40.2MB/s ± 1% 43.8MB/s ± 2% +8.86% (p=0.000 n=10+10) Compress4XReusePrefer/digits-8 436MB/s ± 0% 436MB/s ± 1% ~ (p=0.560 n=9+9) Compress4XReusePrefer/gettysburg-8 422MB/s ± 1% 421MB/s ± 2% ~ (p=0.579 n=10+10) Compress4XReusePrefer/twain-8 363MB/s ± 1% 365MB/s ± 0% ~ (p=0.018 n=10+10) Compress4XReusePrefer/low-ent.10k-8 473MB/s ± 0% 472MB/s ± 0% ~ (p=0.021 n=7+8) Compress4XReusePrefer/superlow-ent-10k-8 312MB/s ± 1% 312MB/s ± 0% ~ (p=0.278 n=10+9) Compress4XReusePrefer/case1-8 134MB/s ± 1% 134MB/s ± 1% ~ (p=0.780 n=9+10) Compress4XReusePrefer/case2-8 122MB/s ± 2% 122MB/s ± 0% ~ (p=1.000 n=10+8) Compress4XReusePrefer/case3-8 129MB/s ± 3% 129MB/s ± 0% ~ (p=0.698 n=10+10) Compress4XReusePrefer/pngdata.001-8 313MB/s ± 1% 313MB/s ± 0% ~ (p=0.481 n=10+10) Compress4XReusePrefer/normcount2-8 179MB/s ± 2% 182MB/s ± 0% +1.96% (p=0.000 n=10+9) Compress4XSizes/digits-100-8 57.6MB/s ± 1% 61.7MB/s ± 1% +7.11% (p=0.000 n=9+10) Compress4XSizes/digits-200-8 100MB/s ± 2% 108MB/s ± 2% +7.90% (p=0.000 n=10+10) Compress4XSizes/digits-500-8 191MB/s ± 1% 201MB/s ± 1% +5.55% (p=0.000 n=10+9) Compress4XSizes/digits-1000-8 273MB/s ± 1% 283MB/s ± 1% +3.75% (p=0.000 n=10+10) Compress4XSizes/digits-5000-8 416MB/s ± 0% 418MB/s ± 1% ~ (p=0.165 n=10+10) Compress4XSizes/digits-10000-8 434MB/s ± 1% 437MB/s ± 1% +0.65% (p=0.002 n=10+10) Compress4XSizes/digits-50000-8 434MB/s ± 0% 434MB/s ± 0% ~ (p=0.604 n=10+9) [Geo mean] 152MB/s 157MB/s +3.33%
- Loading branch information