minio / blake2b-simd

Fast hashing using pure Go implementation of BLAKE2b with SIMD instructions
Apache License 2.0
253 stars 31 forks source link

Benchmark comparison with Go stdlib #32

Open agnivade opened 6 years ago

agnivade commented 6 years ago

Hi,

Looking at the Go source code, it also has AVX2 support - https://github.com/golang/crypto/blob/master/blake2b/blake2bAVX2_amd64.s.

But the benchmarks here show considerable difference - https://github.com/minio/blake2b-simd#avx2

I could not find the code which generates benchmarks for Go and this library. Are the benchmarks outdated ? Is there a reason to choose this library over the Go one ?

fwessels commented 6 years ago

The benchmarking code is in https://github.com/minio/blake2b-simd/blob/master/benchmarks_test.go.

Since we did the benchmark there have been development in Golang (stdlib) so, given some spare time, it would be good to redo the benchmarks.

agnivade commented 6 years ago

Please correct me if I am wrong, but that file just compares the different hash methods. It does not compare BLAKE2b Go vs this repo.

fwessels commented 6 years ago

You are correct, was a bit too quick there.

We will have modified these benchmark tests and captured the results in consecutieve runs in order to compare between old and new (and also avoid a naming clash by including two blake2b’s).