-
Notifications
You must be signed in to change notification settings - Fork 112
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
Trixi forcing downgrades when using Enzyme.jl, Zygote.jl, SciMLsensitivity.jl #2157
Comments
Why is this upstream? It's Trixi that's setting the bound? |
Since it's related to upstream changes that force us to update quite a lot of stuff here. When that's done, we can look for the upstream label to check similar/related issues. |
I thought all of the static array issues were closed other than SciML/RecursiveArrayTools.jl#400. What's a case I could look at? |
Right now, it needs some work on our side like #2150 and StartUpDG.jl updates. As far as I know, SciML/RecursiveArrayTools.jl#400 is the only issue there we currently know. |
@erny123 Thank you for reporting this issue and I can confirm this on my end. We can simplify the issue further and find that it’s a problem between Trixi.jl and Enzyme.jl - see (@v1.11) pkg> st
Status `C:\Users\huiyu\.julia\environments\v1.11\Project.toml`
[a7f1ee26] Trixi v0.9.6
(@v1.11) pkg> add Enzyme
Resolving package versions...
Updating `C:\Users\huiyu\.julia\environments\v1.11\Project.toml`
⌃ [7da242da] + Enzyme v0.11.20
Updating `C:\Users\huiyu\.julia\environments\v1.11\Manifest.toml`
⌃ [7da242da] + Enzyme v0.11.20
⌅ [61eb1bfa] + GPUCompiler v0.25.0
⌅ [929cbde3] + LLVM v6.6.3
[d8793406] + ObjectFile v0.4.2
[6c6a2e73] + Scratch v1.2.1
[53d494c1] + StructIO v0.3.1
⌅ [7cc45869] + Enzyme_jll v0.0.102+0
⌅ [dad2f222] + LLVMExtra_jll v0.0.29+0
Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`
Precompiling project...
✗ Enzyme
✗ Enzyme → EnzymeSpecialFunctionsExt
0 dependencies successfully precompiled in 9 seconds. 238 already precompiled.
2 dependencies errored.
For a report of the errors see `julia> err`. To retry use `pkg> precompile` And it is essentially the bug from old version GPUCompiler.jl see JuliaGPU/CUDA.jl#2520 (as a dependency of Enzyme.jl) and we can also confirm this from your stacktrace ERROR: LoadError: InitError: type Nothing has no field major
Stacktrace:
[1] getproperty
@ ./Base.jl:49 [inlined]
[2] __init__()
@ GPUCompiler ~/.julia/packages/GPUCompiler/U36Ed/src/GPUCompiler.jl:64 One straightforward way would be to update this dependency, but unfortunately, our current restriction on DiffEqBase.jl prevents it from being updated (or it would cause method overwritten warnings) - we force restriction on DiffEqBase.jl as a WAR for SciML dropping support of arrays of
Exactly, and the upstream is not handling releases well enough; they roll them out too quickly without thorough testing. We found that the updates are error-prone, so we need to fix their bugs first. Also, as the upstream provider, they should ensure backward compatibility in new versions (at least for several years) instead of directly dropping support for older versions. |
Please take a look at this new issue SciML/RecursiveArrayTools.jl#410 if you have the bandwidth. Thanks. |
Update: The given project setting can be configured with no errors using Julia 1.10 (I'm trying via this version https://julialang.org/downloads/#long_term_support_release) @erny123 WAR: Downgrade your Julia version to 1.10 and try configure all the packages again if you are urgent |
#410 is patched, I'll look at the ArrayPartition performance bit on my next no-wifi flight. |
I'll give it a shot just to confirm. |
Xpost: https://discourse.julialang.org/t/scimlsensitivity-jl-precompile-error-because-of-enzyme/122561/9
Trying to follow along this the SciMLSensitivity.jl tutorial:
Parameter Estimation of Ordinary Differential Equations · SciMLSensitivity.jl
If anyone has any idea what's going on, I'd appreciate it.
Julia version:
Version 1.11.1 (2024-10-16)
When looking for Enzyme.jl version:
] status Enzyme
Status
~/TRIXI/Project.toml⌅ [7da242da] Enzyme v0.11.20 Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use 'status --outdated'
and
When using
Pkg.add
:I get many errors but most being due to Enzym.jl :
And then
using
:Additionally when removing
Trixi.jl
allows everything to update properly.
then:
] add Trixi
gives the previous downgrades.
The text was updated successfully, but these errors were encountered: