]> Cypherpunks repositories - gostls13.git/commit
crypto/internal/fips140/edwards25519/field: speed up Element.Bytes
authorAlexander Yastrebov <yastrebov.alex@gmail.com>
Fri, 7 Feb 2025 11:29:34 +0000 (11:29 +0000)
committerGopher Robot <gobot@golang.org>
Fri, 7 Feb 2025 16:39:38 +0000 (08:39 -0800)
commit9125e214a1d3341836d41ec3f297f42b9b141db1
treef25ae83ccfa404eff4dc21369b6a180fb53bdd7a
parent6563a23560569488704754409667ebeca2648f68
crypto/internal/fips140/edwards25519/field: speed up Element.Bytes

Write bytes in 64-bit chunks made from adjacent limbs.

goos: linux
goarch: amd64
pkg: crypto/internal/fips140/edwards25519/field
cpu: Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
        │   HEAD~1    │                HEAD                 │
        │   sec/op    │   sec/op     vs base                │
Bytes-8   76.14n ± 3%   13.61n ± 3%  -82.13% (p=0.000 n=10)

        │   HEAD~1   │              HEAD              │
        │    B/op    │    B/op     vs base            │
Bytes-8   0.000 ± 0%   0.000 ± 0%  ~ (p=1.000 n=10) ¹
¹ all samples are equal

        │   HEAD~1   │              HEAD              │
        │ allocs/op  │ allocs/op   vs base            │
Bytes-8   0.000 ± 0%   0.000 ± 0%  ~ (p=1.000 n=10) ¹
¹ all samples are equal

Change-Id: Iaecc32da7fd8df96ff048e1e855a990f44dc9db5
GitHub-Last-Rev: d0e1583a4faf8cc3471af03437107cc0e5770d57
GitHub-Pull-Request: golang/go#71603
Reviewed-on: https://go-review.googlesource.com/c/go/+/647595
Reviewed-by: Filippo Valsorda <filippo@golang.org>
Reviewed-by: Roland Shoemaker <roland@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Auto-Submit: Filippo Valsorda <filippo@golang.org>
src/crypto/internal/fips140/edwards25519/field/fe.go
src/crypto/internal/fips140/edwards25519/field/fe_bench_test.go