mirror of
https://github.com/fumiama/blake2b-simd.git
synced 2026-06-05 10:10:28 +08:00
0b3e695ecc77a334fafe30ee36de504c41ec4d6a
BLAKE2b-SIMD
Pure Go implementation of BLAKE2b using SIMD optimizations.
Introduction
This package is based on the pure go BLAKE2b implementation of Dmitry Chestnykh and merges it with the (cgo dependent) SSE optimized BLAKE2 implementation (which in turn is based on official implementation. It does so by using Go's Assembler for amd64 architectures with a fallback for other architectures.
It gives roughly a 3x performance improvement over the non-optimized go version.
Benchmarks
| Dura | 1 GB |
|---|---|
| blake2b-SIMD | 1.59s |
| blake2b | 4.66s |
Description
Fast hashing using pure Go implementation of BLAKE2b with SIMD instructions
Languages
Go
51.4%
Assembly
48.6%