diff options
| author | Brian Kessler <brian.m.kessler@gmail.com> | 2018-09-06 12:26:31 -0600 |
|---|---|---|
| committer | Robert Griesemer <gri@golang.org> | 2018-12-10 22:50:48 +0000 |
| commit | 1ccb66d1ef031ad70345d2ef1983a5814f405295 (patch) | |
| tree | f679ff2649264764b3984c9e20d2ad77349783db /src/runtime/testdata | |
| parent | ba69df63ebbf9101a35fb11a0df1e1912d285da4 (diff) | |
| download | go-1ccb66d1ef031ad70345d2ef1983a5814f405295.tar.xz | |
hash/fnv: use bits.Mul64 for 128-bit hash
Replace the 128-bit multiplication in 4 parts with bits.Mul64
and two single-width multiplications. This simplifies the code
and increases throughput by ~50% on amd64.
name old time/op new time/op delta
Fnv128KB-4 9.64µs ± 0% 6.09µs ± 0% -36.89% (p=0.016 n=4+5)
Fnv128aKB-4 9.11µs ± 0% 6.17µs ± 5% -32.32% (p=0.008 n=5+5)
name old speed new speed delta
Fnv128KB-4 106MB/s ± 0% 168MB/s ± 0% +58.44% (p=0.016 n=4+5)
Fnv128aKB-4 112MB/s ± 0% 166MB/s ± 5% +47.85% (p=0.008 n=5+5)
Change-Id: Id752f2a20ea3de23a41e08db89eecf2bb60b7e6d
Reviewed-on: https://go-review.googlesource.com/c/133936
Run-TryBot: Matt Layher <mdlayher@gmail.com>
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Matt Layher <mdlayher@gmail.com>
Reviewed-by: Robert Griesemer <gri@golang.org>
Diffstat (limited to 'src/runtime/testdata')
0 files changed, 0 insertions, 0 deletions
