Gusted
|
356c5055ad
|
lib/sha256: Remove it (#9643)
### Purpose
Remove the `lib/sha256` package, because it's no longer necessary. Go's
standard library now has the same performance and is on par with
`sha256-simd` since [Since Go
1.21](1a64574f42 ).
Therefore using `sha256-simd` has no benefits anymore.
ARM already has optimized sha256 assembly code since
7b8a7f8272 ,
`sha256-simd` published their results before that optimized assembly was
implemented,
f941fedda8 .
The assembly looks very similar and the benchmarks in the Go commit
match that of `sha256-simd`.
This patch removes all of the related code of `lib/sha256` and makes
`crypto/sha256` the 'default'.
Benchmark of `sha256-simd` and `crypto/sha256`:
<details>
```
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%
```
</details>
### Testing
Compiled and tested on Linux.
### Documentation
https://github.com/syncthing/docs/pull/874
|
2024-08-10 12:58:20 +01:00 |
|
Syncthing Release Automation
|
a28441a9bf
|
gui, man, authors: Update docs, translations, and contributors
|
2024-07-22 03:45:28 +00:00 |
|
Syncthing Release Automation
|
0b5ff1f5f7
|
gui, man, authors: Update docs, translations, and contributors
|
2024-07-15 03:45:20 +00:00 |
|
Syncthing Release Automation
|
13ebe1c87f
|
gui, man, authors: Update docs, translations, and contributors
|
2024-07-08 03:45:16 +00:00 |
|
Syncthing Release Automation
|
4704d3bc48
|
gui, man, authors: Update docs, translations, and contributors
|
2024-07-01 03:45:16 +00:00 |
|
Syncthing Release Automation
|
495809ac9e
|
gui, man, authors: Update docs, translations, and contributors
|
2024-06-03 03:45:18 +00:00 |
|
Syncthing Release Automation
|
06914b872b
|
gui, man, authors: Update docs, translations, and contributors
|
2024-05-13 03:45:18 +00:00 |
|
Syncthing Release Automation
|
01b820dc78
|
gui, man, authors: Update docs, translations, and contributors
|
2024-04-15 04:10:05 +00:00 |
|
Syncthing Release Automation
|
bdfd0f0548
|
gui, man, authors: Update docs, translations, and contributors
|
2024-03-25 03:45:14 +00:00 |
|
Syncthing Release Automation
|
b49137ce36
|
gui, man, authors: Update docs, translations, and contributors
|
2024-03-18 03:45:22 +00:00 |
|
Syncthing Release Automation
|
7fe3906534
|
gui, man, authors: Update docs, translations, and contributors
|
2024-03-04 03:54:27 +00:00 |
|
Syncthing Release Automation
|
86c4cafc96
|
gui, man, authors: Update docs, translations, and contributors
|
2024-02-26 03:45:28 +00:00 |
|
Syncthing Release Automation
|
b76e6ce70d
|
gui, man, authors: Update docs, translations, and contributors
|
2024-02-12 03:45:25 +00:00 |
|
Syncthing Release Automation
|
f2f5786b33
|
gui, man, authors: Update docs, translations, and contributors
|
2024-02-05 03:45:33 +00:00 |
|
Syncthing Release Automation
|
ee9b20e47a
|
gui, man, authors: Update docs, translations, and contributors
|
2024-01-22 03:45:30 +00:00 |
|
Syncthing Release Automation
|
e829a63295
|
gui, man, authors: Update docs, translations, and contributors
|
2024-01-08 03:45:23 +00:00 |
|
Syncthing Release Automation
|
683b48182c
|
gui, man, authors: Update docs, translations, and contributors
|
2023-12-25 03:45:16 +00:00 |
|
Syncthing Release Automation
|
5360e7153b
|
gui, man, authors: Update docs, translations, and contributors
|
2023-12-18 03:45:20 +00:00 |
|
Syncthing Release Automation
|
4c5528bd0e
|
gui, man, authors: Update docs, translations, and contributors
|
2023-12-11 03:45:22 +00:00 |
|
Syncthing Release Automation
|
5bfc540c88
|
gui, man, authors: Update docs, translations, and contributors
|
2023-12-04 03:45:22 +00:00 |
|
Syncthing Release Automation
|
6069cf39e5
|
gui, man, authors: Update docs, translations, and contributors
|
2023-11-27 03:45:21 +00:00 |
|
Syncthing Release Automation
|
8e9ee3fbe8
|
gui, man, authors: Update docs, translations, and contributors
|
2023-11-20 08:49:38 +00:00 |
|
Syncthing Release Automation
|
7a132bdf24
|
gui, man, authors: Update docs, translations, and contributors
|
2023-11-13 03:45:25 +00:00 |
|
Syncthing Release Automation
|
c17a1fea77
|
gui, man, authors: Update docs, translations, and contributors
|
2023-11-06 03:45:25 +00:00 |
|
Syncthing Release Automation
|
6e4574a9f7
|
gui, man, authors: Update docs, translations, and contributors
|
2023-10-09 03:45:35 +00:00 |
|
Syncthing Release Automation
|
a8486b0468
|
gui, man, authors: Update docs, translations, and contributors
|
2023-10-02 03:45:41 +00:00 |
|
Syncthing Release Automation
|
58d1f3a471
|
gui, man, authors: Update docs, translations, and contributors
|
2023-09-18 03:45:31 +00:00 |
|
Syncthing Release Automation
|
e38679d9bf
|
gui, man, authors: Update docs, translations, and contributors
|
2023-09-11 03:45:45 +00:00 |
|
Syncthing Release Automation
|
4138e22898
|
gui, man, authors: Update docs, translations, and contributors
|
2023-09-04 03:45:39 +00:00 |
|
Syncthing Release Automation
|
c40dae315b
|
gui, man, authors: Update docs, translations, and contributors
|
2023-08-21 03:45:38 +00:00 |
|
Syncthing Release Automation
|
8042bd1a54
|
gui, man, authors: Update docs, translations, and contributors
|
2023-08-14 03:45:48 +00:00 |
|
Syncthing Release Automation
|
e09146ee03
|
gui, man, authors: Update docs, translations, and contributors
|
2023-08-07 03:45:35 +00:00 |
|
Syncthing Release Automation
|
97625ccc26
|
gui, man, authors: Update docs, translations, and contributors
|
2023-07-31 03:45:37 +00:00 |
|
Syncthing Release Automation
|
11ece5d89e
|
gui, man, authors: Update docs, translations, and contributors
|
2023-07-10 03:46:49 +00:00 |
|
Syncthing Release Automation
|
5532532db9
|
gui, man, authors: Update docs, translations, and contributors
|
2023-06-19 03:46:01 +00:00 |
|
Syncthing Release Automation
|
7d56fba321
|
gui, man, authors: Update docs, translations, and contributors
|
2023-06-12 03:45:39 +00:00 |
|
Syncthing Release Automation
|
2b17db8aa3
|
gui, man, authors: Update docs, translations, and contributors
|
2023-06-05 03:45:37 +00:00 |
|
Syncthing Release Automation
|
0b3a101ccd
|
gui, man, authors: Update docs, translations, and contributors
|
2023-05-15 03:45:55 +00:00 |
|
Syncthing Release Automation
|
dae5eab787
|
gui, man, authors: Update docs, translations, and contributors
|
2023-05-01 03:45:35 +00:00 |
|
Syncthing Release Automation
|
0f87607cd5
|
gui, man, authors: Update docs, translations, and contributors
|
2023-04-17 03:45:33 +00:00 |
|
Evgeny Kuznetsov
|
61444960bc
|
docs: fix typo (#8857)
|
2023-04-10 10:30:11 +00:00 |
|
Syncthing Release Automation
|
30bb8f2116
|
gui, man, authors: Update docs, translations, and contributors
|
2023-04-10 03:45:37 +00:00 |
|
Syncthing Release Automation
|
51e85d5162
|
gui, man, authors: Update docs, translations, and contributors
|
2023-03-27 03:45:37 +00:00 |
|
Dimitri Papadopoulos Orfanos
|
526e21ae26
|
all: Fix typos found by codespell (#8833)
|
2023-03-21 08:07:28 +01:00 |
|
Syncthing Release Automation
|
5caf9bfc18
|
gui, man, authors: Update docs, translations, and contributors
|
2023-03-20 03:45:38 +00:00 |
|
Syncthing Release Automation
|
59de7048bd
|
gui, man, authors: Update docs, translations, and contributors
|
2023-03-13 03:45:45 +00:00 |
|
Syncthing Release Automation
|
8bbf2ba9ac
|
gui, man, authors: Update docs, translations, and contributors
|
2023-02-27 03:45:16 +00:00 |
|
Syncthing Release Automation
|
2321d0db08
|
gui, man, authors: Update docs, translations, and contributors
|
2023-02-20 03:45:34 +00:00 |
|
Syncthing Release Automation
|
ee30647bf7
|
gui, man, authors: Update docs, translations, and contributors
|
2023-02-13 03:48:08 +00:00 |
|
Syncthing Release Automation
|
dc6d695c00
|
gui, man, authors: Update docs, translations, and contributors
|
2023-01-30 03:45:28 +00:00 |
|