tzhash/tz
Evgenii Stratonikov 73d978c31e Rewrite AVX2 loop in assembly
Helps to get rid of MOV and generating constants for each iteration.

```
name                     old time/op    new time/op    delta
Sum/AVX2Inline_digest-8    1.57ms ± 2%    1.41ms ± 0%  -10.52%  (p=0.000 n=9+9)

name                     old speed      new speed      delta
Sum/AVX2Inline_digest-8  63.6MB/s ± 1%  71.1MB/s ± 0%  +11.76%  (p=0.000 n=9+9)
```

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-17 17:18:36 +03:00
..
avx.go Fix linter issues 2021-12-29 13:23:05 +03:00
avx2.go Alias gf127.GF127 2019-10-15 13:22:36 +03:00
avx2_amd64.s Rewrite AVX2 loop in assembly 2022-01-17 17:18:36 +03:00
avx2_inline.go Rewrite AVX2 loop in assembly 2022-01-17 17:18:36 +03:00
avx_amd64.s Optimize AVX implementation 2022-01-17 17:18:36 +03:00
avx_inline.go Add AVX implementation with inlined multiplication 2019-10-16 15:11:53 +03:00
hash.go Use golang.org/x/sys instead of self-implemented detector 2020-01-16 11:30:46 +03:00
hash_test.go Update benchmark result in README.md 2019-10-16 15:11:57 +03:00
pure.go Alias gf127.GF127 2019-10-15 13:22:36 +03:00
sl2.go Fix linter issues 2021-12-29 13:23:05 +03:00
sl2_test.go Remove non-AVX parts from avx package 2019-10-15 13:22:36 +03:00