chunker
chunker copied to clipboard
speed up polynomial computation
In my server, the polynomial computation gets about ~50% improvement.
goos: linux
goarch: amd64
pkg: github.com/restic/chunker
cpu: Intel(R) Xeon(R) Platinum 8269CY CPU @ 2.50GHz
│ ./old.txt │ ./new.txt │
│ sec/op │ sec/op vs base │
ChunkerWithSHA256-8 158.3m ± 0% 158.2m ± 0% ~ (p=0.393 n=10)
Chunker-8 65.55m ± 0% 65.54m ± 0% ~ (p=0.853 n=10)
NewChunker-8 135.5µ ± 39% 107.8µ ± 23% ~ (p=0.353 n=10)
PolMul-8 165.6n ± 0% 105.1n ± 0% -36.53% (p=0.000 n=10)
PolDiv-8 80.95n ± 0% 80.94n ± 0% ~ (p=0.266 n=10)
PolDeg-8 0.3145n ± 0% 0.3148n ± 0% ~ (p=0.177 n=10)
PolMod-8 80.97n ± 0% 80.94n ± 0% ~ (p=0.358 n=10)
PolDivMod-8 81.18n ± 0% 81.18n ± 0% ~ (p=0.522 n=10)
RandomPolynomial-8 2055.5µ ± 2% 283.9µ ± 1% -86.19% (p=0.000 n=10)
PolIrreducible-8 1145.8µ ± 0% 108.7µ ± 0% -90.52% (p=0.000 n=10)
PolGCD-8 712.5n ± 0% 656.1n ± 0% -7.92% (p=0.000 n=10)
PolMulMod-8 8672.0n ± 0% 469.2n ± 0% -94.59% (p=0.000 n=10)
geomean 9.538µ 4.890µ -48.74%
│ ./old.txt │ ./new.txt │
│ B/s │ B/s vs base │
ChunkerWithSHA256-8 202.1Mi ± 0% 202.2Mi ± 0% ~ (p=0.434 n=10)
Chunker-8 488.1Mi ± 0% 488.3Mi ± 0% ~ (p=0.853 n=10)
geomean 314.1Mi 314.2Mi +0.05%