-
-
Couldn't load subscription status.
- Fork 5.7k
[1.11.x] Revert "yet more atomics & cache-line fixes on work-stealing queue (#53424)" #57309
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
[1.11.x] Revert "yet more atomics & cache-line fixes on work-stealing queue (#53424)" #57309
Conversation
… queue (JuliaLang#53424)" Results in reliable `julia` segfault immediately upon startup. I don't know what is going on or why it is crashing or what is wrong, but this is very reproducible and bisection result is reliable. Notably, does not seem to be happening in `master`. See the following issue for more details: Fixes JuliaLang#54560 This reverts commit 53180e4.
|
Hi @LebedevRI, sorry for the frustration. A couple of points
First, please refrain from these kinds of side comments, they are counter-productive and we prefer to not use them here. Now for the actual issue.
That is part of the problem. We generally avoid changing things based on observation alone without understanding the root cause. An additional issue here is that it does not reproduce for the developers or on CI, so it was somewhat low priority. That said, I just read through the thread, and I think there's a conclusion to be had:
|
|
Thanks for reviving the PR @LebedevRI and thanks for your comments @Keno. @Keno: indeed, alignment issues in libc's allocator were my first guess here, but the last time I checked this doesn't reproduce when you start Julia with a single thread -- #54560 (comment). If there were indeed alignment issues, not sure if I could understand why this bug would manifest with multiple threads, but not with a single thread. |
|
It's not super surpising to me. Lots of threading specific data structures don't really get utilized when running single threaded, so I imagine it's just luck |
|
The segfault happens when memsetting a struct in jl_init_thread_heap. We run this code independently of thread counts. |
Yeah, i'm sorry, that should have been worded better.
Hurray.
This, unfortunately, doesn't mean much. |
|
Closing in favor of #57310 |
@gbaraldi @vchuravy @vtjnash @d-netto once again, latest release branch is broken. Does nobody care?
Results in reliable
juliasegfault immediately upon startup. I don't know what is going on or why it is crashing or what is wrong, but this is very reproducible and bisection result is reliable.Notably, does not seem to be happening in
master.See the following issue for more details:
Fixes #54560
This reverts commit 53180e4.
This is a respin of #56342