• Mike Strosaker's avatar
    crypto/sha256: improve performance for sha256.block on ppc64le · 7b50bd8a
    Mike Strosaker authored
    Adds an assembly implementation of sha256.block for ppc64le to improve its
    performance.  This implementation is largely based on the original amd64
    implementation, which unrolls the 64 iterations of the inner loop.
    
    Fixes #17652
    
    benchmark               old ns/op     new ns/op     delta
    BenchmarkHash8Bytes     1263          767           -39.27%
    BenchmarkHash1K         14048         7766          -44.72%
    BenchmarkHash8K         102245        55626         -45.60%
    
    benchmark               old MB/s     new MB/s     speedup
    BenchmarkHash8Bytes     6.33         10.43        1.65x
    BenchmarkHash1K         72.89        131.85       1.81x
    BenchmarkHash8K         80.12        147.27       1.84x
    
    Change-Id: Ib4adf429423b20495580400be10bd7e171bcc70b
    Reviewed-on: https://go-review.googlesource.com/32318Reviewed-by: 's avatarCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>
    Reviewed-by: 's avatarDavid Chase <drchase@google.com>
    Run-TryBot: David Chase <drchase@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    7b50bd8a
Name
Last commit
Last update
..
aes Loading commit data...
cipher Loading commit data...
des Loading commit data...
dsa Loading commit data...
ecdsa Loading commit data...
elliptic Loading commit data...
hmac Loading commit data...
md5 Loading commit data...
rand Loading commit data...
rc4 Loading commit data...
rsa Loading commit data...
sha1 Loading commit data...
sha256 Loading commit data...
sha512 Loading commit data...
subtle Loading commit data...
tls Loading commit data...
x509 Loading commit data...
crypto.go Loading commit data...