mirror of
1
Fork 0
forgejo/services
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
..
actions Always delete existing scheduled action tasks (#27662) (#27688) 2023-10-19 09:37:20 +02:00
agit Move notification interface to services layer (#26915) 2023-09-05 18:37:47 +00:00
asymkey Another round of `db.DefaultContext` refactor (#27103) (#27262) 2023-09-25 19:24:35 +02:00
attachment [FEAT] allow setting the update date on issues and comments 2023-11-13 12:33:49 +01:00
auth [TESTS] oauth2: make it possible to use an alternate http.Client 2023-11-13 12:33:48 +01:00
automerge Improve queue and logger context (#24924) 2023-05-26 07:31:55 +00:00
context Another round of `db.DefaultContext` refactor (#27103) (#27262) 2023-09-25 19:24:35 +02:00
convert [FEAT] add Forgero Git Service 2023-11-13 12:33:49 +01:00
cron Improve retrying index issues (#27554) (#27634) 2023-10-16 09:55:53 +08:00
externalaccount More `db.DefaultContext` refactor (#27265) (#27347) 2023-09-29 13:35:01 +00:00
feed More `db.DefaultContext` refactor (#27265) (#27347) 2023-09-29 13:35:01 +00:00
forgejo [UPGRADE] add sanity checks for [storage*] 2023-11-13 12:33:49 +01:00
forms Check blocklist for emails when adding them to account (#26812) 2023-08-30 10:46:49 -05:00
gitdiff Fix successful return value for `SyncAndGetUserSpecificDiff` (#27152) 2023-09-20 22:28:17 +02:00
indexer Improve retrying index issues (#27554) (#27634) 2023-10-16 09:55:53 +08:00
issue [FEAT] allow setting the update date on issues and comments 2023-11-13 12:33:49 +01:00
lfs [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
mailer [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
markup Move web/api context related testing function into a separate package (#26859) 2023-09-01 11:26:07 +00:00
migrations [GITEA] Skip unsupported code comment 2023-11-13 14:06:30 +01:00
mirror More `db.DefaultContext` refactor (#27265) (#27347) 2023-09-29 13:35:01 +00:00
notify [GITEA] notifies admins on new user registration 2023-11-13 14:06:27 +01:00
org Delete repos of org when purge delete user (#27273) (#27728) 2023-11-01 10:03:12 +08:00
packages Close all hashed buffers (#27787) (#27790) 2023-10-25 22:24:25 +02:00
pull Fix poster is not loaded in get default merge message (#27657) (#27666) 2023-10-17 18:20:35 +02:00
release Another round of `db.DefaultContext` refactor (#27103) (#27262) 2023-09-25 19:24:35 +02:00
repository Delete repos of org when purge delete user (#27273) (#27728) 2023-11-01 10:03:12 +08:00
secrets Refactor secrets modification logic (#26873) 2023-09-05 15:21:02 +00:00
task Fix incorrect ctx usage in defer function (#27740) (#27741) 2023-10-22 14:36:49 +00:00
uinotification More `db.DefaultContext` refactor (#27265) (#27347) 2023-09-29 13:35:01 +00:00
user Remove action runners on user deletion (#27902) (#27908) 2023-11-05 13:20:00 +00:00
webhook [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
wiki Fix incorrect test code for error handling (#27139) 2023-09-20 08:51:36 +08:00