Template
1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo synced 2024-11-29 21:26:10 +01:00
forgejo/models/auth
Gusted 0d8478cff8
[GITEA] Drop sha256-simd in favor of stdlib
- In Go 1.21 the crypto/sha256 [got a massive
improvement](https://go.dev/doc/go1.21#crypto/sha256) by utilizing the
SHA instructions for AMD64 CPUs, which sha256-simd already was doing.
The performance is now on par and I think it's preferable to use the
standard library rather than a package when possible.

```
cpu: AMD Ryzen 5 3600X 6-Core Processor
                │  simd.txt   │               go.txt                │
                │   sec/op    │    sec/op     vs base               │
Hash/8Bytes-12    63.25n ± 1%    73.38n ± 1%  +16.02% (p=0.002 n=6)
Hash/64Bytes-12   98.73n ± 1%   105.30n ± 1%   +6.65% (p=0.002 n=6)
Hash/1K-12        567.2n ± 1%    572.8n ± 1%   +0.99% (p=0.002 n=6)
Hash/8K-12        4.062µ ± 1%    4.062µ ± 1%        ~ (p=0.396 n=6)
Hash/1M-12        512.1µ ± 0%    510.6µ ± 1%        ~ (p=0.485 n=6)
Hash/5M-12        2.556m ± 1%    2.564m ± 0%        ~ (p=0.093 n=6)
Hash/10M-12       5.112m ± 0%    5.127m ± 0%        ~ (p=0.093 n=6)
geomean           13.82µ         14.27µ        +3.28%

                │   simd.txt   │               go.txt                │
                │     B/s      │     B/s       vs base               │
Hash/8Bytes-12    120.6Mi ± 1%   104.0Mi ± 1%  -13.81% (p=0.002 n=6)
Hash/64Bytes-12   618.2Mi ± 1%   579.8Mi ± 1%   -6.22% (p=0.002 n=6)
Hash/1K-12        1.682Gi ± 1%   1.665Gi ± 1%   -0.98% (p=0.002 n=6)
Hash/8K-12        1.878Gi ± 1%   1.878Gi ± 1%        ~ (p=0.310 n=6)
Hash/1M-12        1.907Gi ± 0%   1.913Gi ± 1%        ~ (p=0.485 n=6)
Hash/5M-12        1.911Gi ± 1%   1.904Gi ± 0%        ~ (p=0.093 n=6)
Hash/10M-12       1.910Gi ± 0%   1.905Gi ± 0%        ~ (p=0.093 n=6)
geomean           1.066Gi        1.032Gi        -3.18%
```

(cherry picked from commit abd94ff5b5)
(cherry picked from commit 15e81637ab)

Conflicts:
	go.mod
	https://codeberg.org/forgejo/forgejo/pulls/1581
(cherry picked from commit 5caea2d75aeac78fb306f58a3cf7809d5b70c7f2)
(cherry picked from commit 08da542cce)
(cherry picked from commit d71a8cc9fb)
(cherry picked from commit 63c9fc2bee)
(cherry picked from commit e1db85d48a)
(cherry picked from commit 5e86a5d2d1)
2023-11-13 14:06:31 +01:00
..
main_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
oauth2.go [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
oauth2_test.go Ignore the trailing slashes when comparing oauth2 redirect_uri (#26597) 2023-08-21 12:15:55 +08:00
session.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
source.go [TESTS] oauth2: add integration test helpers 2023-11-13 12:33:48 +01:00
source_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
token.go More refactoring of db.DefaultContext (#27083) 2023-09-15 06:13:19 +00:00
token_scope.go [GITEA] silently ignore obsolete sudo scope 2023-11-13 14:04:15 +01:00
token_scope_test.go [GITEA] silently ignore obsolete sudo scope 2023-11-13 14:04:15 +01:00
token_test.go More refactoring of db.DefaultContext (#27083) 2023-09-15 06:13:19 +00:00
twofactor.go [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
webauthn.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
webauthn_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00