Skip to content
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

Julia v1.11.3 and v1.10.8 stalling precompilation with [email protected] #57152

Closed
oschulz opened this issue Jan 24, 2025 · 12 comments
Closed
Labels
performance Must go faster types and dispatch Types, subtyping and method dispatch

Comments

@oschulz
Copy link
Contributor

oschulz commented Jan 24, 2025

With Julia v1.11.3 (official binaries, tested on Ubuntu 22.04), precompilation of GaussianMixtures.jl stalls:

(@v1.11) pkg> add GaussianMixtures
Precompiling project...
[... dependency installation and precompilation ...]
  Progress [========================================>]  81/82
  ◒ GaussianMixtures

never finishes, but also show no errors (fresh Julia installation, starting with and empty package depot).

Everything is fine with Julia v1.11.2 and lower, so maybe some compiler bug in Julia v1.11.3?

System info:

Julia Version 1.11.3
Commit d63adeda50d (2025-01-21 19:42 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 20 × 13th Gen Intel(R) Core(TM) i9-13900H
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, goldmont)
Threads: 6 default, 0 interactive, 3 GC (on 20 virtual cores)
@giordano giordano added bisect wanted compiler:precompilation Precompilation of modules labels Jan 24, 2025
@nsajko
Copy link
Contributor

nsajko commented Jan 24, 2025

Precompilation via using GaussianMixtures works fine for me.

Julia Version 1.11.3
Commit d63adeda50d (2025-01-21 19:42 UTC)
Build Info:
  Official https://julialang.org/ release
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 8 × AMD Ryzen 3 5300U with Radeon Graphics
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, znver2)
Threads: 8 default, 0 interactive, 4 GC (on 8 virtual cores)

@nsajko
Copy link
Contributor

nsajko commented Jan 24, 2025

Some possibly useful questions that come to mind:

  • is julia using any CPU time while stalled
  • how reproducible is this? what happens if you delete .julia/compiled/v1.11 and try precompiling again?

@oschulz
Copy link
Contributor Author

oschulz commented Jan 24, 2025

how reproducible is this? what happens if you delete .julia/compiled/v1.11 and try precompiling again?

I do test this with a completely empty Julia package depot every time, of course.

Precompilation via using GaussianMixtures works fine for me.

It does now, interestingly, with [email protected], which was released about an hour ago. But I can perfectly reproduce it with [email protected].

Stalls forever on Julia v1.11.3, with 100% CPU load:

(@v1.11) pkg> add [email protected]

Done in a few seconds:

(@v1.11) pkg> add [email protected]

While the problem is "gone" now with [email protected], I think it should still be investigated, given that Julia v1.11.2 and lower has no problem with [email protected]. The difference is the commit davidavdav/GaussianMixtures.jl#115 which addresses the stalled-precompilation issue, but it doesn't look like the code was "incorrect" before - it's more like an empirical workaround. To to me it looks more like some compiler bug that triggered before somehow but isn't triggered after the changes. @BenCurran98 mentions in that PR that Julia v1.10.8 is also affected, while v1.10.7 seems to have been fine.

@KristofferC
Copy link
Member

Most helpful here would be a bisect that would find the commit that introduced the stall.

@oschulz oschulz changed the title Julia v1.11.3 breaks GaussianMixtures.jl (precompilation stalls, compiler bug?) Julia v1.11.3 and v1.10.8 stalling precompilation with [email protected] Jan 24, 2025
@oschulz
Copy link
Contributor Author

oschulz commented Jan 24, 2025

Most helpful here would be a bisect that would find the commit that introduced the stall.

Sorry, don't have the tooling set up to do a quick bisect. But I can reproduce the stalling-precompilation issue with Julia v1.11.3 and [email protected] on macOS (arm64-apple-darwin24.0.0) as well.

@nsajko
Copy link
Contributor

nsajko commented Jan 24, 2025

It's #56640

@oschulz
Copy link
Contributor Author

oschulz commented Jan 24, 2025

It's #56640

Thanks @nsajko - I guess we can close this then?

@nsajko
Copy link
Contributor

nsajko commented Jan 24, 2025

I guess better wait until it's fixed

@oschulz
Copy link
Contributor Author

oschulz commented Jan 25, 2025

I guess better wait until it's fixed

Oh, sorry - #56640 was the cause, not the fix - my bad. :-)

@N5N3 N5N3 added performance Must go faster types and dispatch Types, subtyping and method dispatch and removed compiler:precompilation Precompilation of modules labels Jan 26, 2025
@N5N3
Copy link
Member

N5N3 commented Jan 26, 2025

I haven't found the MWE, but backporting #56007 fixes this locally.

@ViralBShah
Copy link
Member

Closing since the fix is marked for backporting.

@oschulz
Copy link
Contributor Author

oschulz commented Feb 3, 2025

Thanks again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance Must go faster types and dispatch Types, subtyping and method dispatch
Projects
None yet
Development

No branches or pull requests

6 participants