-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: TestSmhasherWindowed is still flaky on linux-386-longtest #43130
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
2021-01-22T23:03:58-25c39e4/linux-386-longtest
|
Change https://golang.org/cl/280372 mentions this issue: |
wyhash is a general hash function that: 1. Default hash function of Zig, Nim 2. Passed Smhasher, BigCrush and PractRand 3. Less code 4. 3~26% faster than internal hashmap name old time/op new time/op delta Hash5 67.8ns ± 0% 65.4ns ± 0% -3.45% (p=0.000 n=7+10) Hash16 82.5ns ± 0% 74.2ns ± 0% -10.12% (p=0.000 n=6+8) Hash64 121ns ± 0% 102ns ± 0% -15.82% (p=0.000 n=7+10) Hash1024 1.13µs ± 0% 0.89µs ± 0% -20.58% (p=0.000 n=10+9) Hash65536 68.9µs ± 0% 54.4µs ± 0% -21.04% (p=0.000 n=10+7) HashStringSpeed 103ns ± 2% 93ns ± 3% -10.24% (p=0.000 n=9+10) HashBytesSpeed 191ns ± 2% 180ns ± 1% -5.40% (p=0.000 n=10+8) HashInt32Speed 59.0ns ± 2% 59.1ns ± 1% ~ (p=0.655 n=9+8) HashInt64Speed 72.7ns ± 3% 66.1ns ± 5% -9.04% (p=0.000 n=10+10) HashStringArraySpeed 270ns ± 1% 222ns ± 2% -17.91% (p=0.000 n=10+10) FastrandHashiter 108ns ± 0% 109ns ± 1% +0.96% (p=0.002 n=10+10) name old speed new speed delta Hash5 73.8MB/s ± 0% 76.4MB/s ± 0% +3.58% (p=0.000 n=7+10) Hash16 194MB/s ± 0% 216MB/s ± 0% +11.25% (p=0.000 n=10+8) Hash64 530MB/s ± 0% 630MB/s ± 0% +18.74% (p=0.000 n=8+10) Hash1024 910MB/s ± 0% 1145MB/s ± 0% +25.88% (p=0.000 n=10+9) Hash65536 951MB/s ± 0% 1204MB/s ± 0% +26.64% (p=0.000 n=10+7) Update #43130 Change-Id: Id00c54b116a2411fcf675e95896fffb85f0e25b6 Reviewed-on: https://go-review.googlesource.com/c/go/+/280372 Trust: Meng Zhuo <mzh@golangcn.org> Run-TryBot: Meng Zhuo <mzh@golangcn.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
Updates: I've run 32 bits SmhasherWindow for 4770 times (~24h) without failures... |
Indeed, still failing about once a month (and that's including the lower rate of test runs due to the code freeze). The more recent failures are back to 512 collisions each.
2022-01-19T20:54:49-1efc581/linux-386-longtest |
Recently a new version of Smhasher is released with the "bad seed" testcase, which wyhash is failed ( caused by multiply 0). |
@mengzhuo, at the very least would it be useful to have the test log the seed(s) that produced the unexpected collision rate? That would help to verify that this test failure is due to the expected bad seeds. |
Marking as release-blocker for Go 1.19: |
My mistake: 386 using AES asm part do the hashing, I will take a look. ------Original comment------------------------------- This issue can be reproduced within 6000 times run on 64 bit keys SmhasherWindow test. After I deleted these 4 lines, no more flaky (12K runs): Lines 325 to 328 in 69e1711
I think the OR itself cancel the randomness of last bit (always 1) But when I tried XOR
there are flaky failures. |
Change https://go.dev/cl/384075 mentions this issue: |
Unfortunatly, it still flaky within 1/40000 and the key and seed seems random enough to me.
According to the smhasher, some hashing algorithm based on AES failed the test. |
|
|
|
@golang/runtime: this is a recurring failure on |
Change https://go.dev/cl/402456 mentions this issue: |
2020-12-10T22:58:49-6d3d3fb/linux-386-longtest
2020-10-26T21:47:49-36c5edd/linux-386-longtest
See previously #39352.
I would guess that it's flaky on 32-bit ARM too, but we don't have a
longtest
builder for that configuration.CC @randall77
The text was updated successfully, but these errors were encountered: