-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
xoshiro256++ implementation in task.c #42150
Comments
cc @chethega and @rfourquet, who wrote this code. |
Also, implementation in Line 672 in 272eaf9
julia/stdlib/Random/src/Xoshiro.jl Line 57 in 3a4198e
Shouldn't this be:
|
It seems obvious that both the implementations are wrong (while fixes trivial), so this needs to be added to 1.7 milestone. |
See JuliaLang#42150. SIMD code seems to have same error, not considered here.
This is not undefined behavior, so unrelated. There is perhaps a fast-fill array method that is vectorized for longer arrays? I am not sure if it was supposed to show a difference for simple sequences like that. |
fixed by #42201 |
julia/src/task.c
Line 670 in 272eaf9
Shouldn't this be
s1
as inuint64_t t = s1 << 17;
?Note:
s1
, not s0See Fig. 5 ("C code for a xoshiro256+/xoshiro256++/xoshiro256** generator") on page 6 in the Blackman / Vigna paper : https://arxiv.org/pdf/1805.01407.pdf
The text was updated successfully, but these errors were encountered: