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
Jakob Borg
2f281799c1
cmd/stcrashreceiver: Ignore patterns, improve metrics
2024-06-03 19:50:28 +02:00
Jakob Borg
07a9fa2dbd
all: Use own automaxprocs package that doesn't log (ref #9436 ) ( #9437 )
...
### Purpose
🤫
2024-02-27 13:05:19 +01:00
Thomas
aa559bf496
all: Use Linux container CPU quota ( fixes #9357 , fixes #9435 ) ( #9436 )
...
Go is not cgroup aware and by default will set GOMAXPROCS to the number
of available threads, regardless of whether it is within the allocated
quota. This behaviour causes high amount of CPU throttling and degraded
application performance.
2024-02-26 12:23:14 +00:00
Jakob Borg
47bcf4f8f4
cmd/stcrashreceiver: Minor cleanup, stricter file permissions
2023-11-27 08:24:59 +01:00
Jakob Borg
a8b9096353
cmd/stcrashreceiver: Add metrics for incoming reports
2023-11-27 08:24:59 +01:00
Jakob Borg
229b6a292c
cmd/stcrashreceiver: Add /ping endpoint
2023-07-01 07:53:50 +02:00
Jakob Borg
65cfefaa3c
cmd, docker: Updates for infrastructure
...
These are some changes to the relay pool server, upgrade server, and
crash receiver to run under Kubernetes. It's been in production for a
while.
2023-01-31 11:17:52 +01:00
deepsource-autofix[bot]
80ec4acb53
all: Fix check for empty string ( #8456 )
...
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-07-28 16:51:03 +02:00
Jakob Borg
4b750b6dc3
all: Remove usage of deprecated io/ioutil ( #7971 )
...
As of Go 1.16 io/ioutil is deprecated. This replaces usage with the
corresponding functions in package os and package io.
2021-11-22 08:59:47 +01:00
Simon Frei
67b18569cf
all: Send deadlocks as failures, crash only as a last resort ( #7785 )
2021-07-27 21:27:52 +02:00
Simon Frei
1ae5ac7d0b
cmd/stcrashreceiver: Sanitize failure report fingerprints ( #7840 )
2021-07-22 11:16:24 +02:00
Simon Frei
0970aed596
cmd/stcrashreceiver: Add tag for report type (crash/failure) ( #7374 )
2021-02-18 13:16:32 +00:00
Simon Frei
27a34609a1
all: Failure reporting fixes ( #7331 )
2021-02-05 11:21:14 +01:00
Simon Frei
cccbb0bd5e
lib/ur: Reset timer when there's nothing to report ( #7169 )
2020-11-28 20:09:22 +01:00
Simon Frei
d828adb648
cmd/stcrashreceiver, lib/db: Improve panic message handling ( #7029 )
2020-10-08 17:37:45 +02:00
Simon Frei
9d09fd6af3
all: Add failure reporting ( fixes #7028 ) ( #6925 )
2020-10-07 10:05:13 +02:00