EnzymeAD / Enzyme.jl

Julia bindings for the Enzyme automatic differentiator
https://enzyme.mit.edu
MIT License
443 stars 62 forks source link

LLVM version issue with latest release? #1580

Closed ChrisRackauckas closed 3 months ago

ChrisRackauckas commented 3 months ago
Continuous and discrete costs: Error During Test at /home/runner/.julia/packages/SafeTestsets/raUNr/src/SafeTestsets.jl:30
  Got exception outside of a @test
  LoadError: MethodError: no method matching cpu_features!(::LLVM.ModulePassManager)

  Closest candidates are:
    cpu_features!(::LLVM.Module)
     @ GPUCompiler ~/.julia/packages/GPUCompiler/05oYT/src/optim.jl:606

  Stacktrace:
    [1] (::Enzyme.Compiler.var"#28472#28473"{LLVM.Module, LLVM.TargetMachine})(pm::LLVM.ModulePassManager)
      @ Enzyme.Compiler ~/.julia/packages/Enzyme/qd8AI/src/compiler/optimize.jl:1941
    [2] LLVM.ModulePassManager(::Enzyme.Compiler.var"#28472#28473"{LLVM.Module, LLVM.TargetMachine}; kwargs::@Kwargs{})
      @ LLVM ~/.julia/packages/LLVM/5DlHM/src/passmanager.jl:33
    [3] LLVM.ModulePassManager(::Function)
      @ LLVM ~/.julia/packages/LLVM/5DlHM/src/passmanager.jl:30
    [4] optimize!(mod::LLVM.Module, tm::LLVM.TargetMachine)
      @ Enzyme.Compiler ~/.julia/packages/Enzyme/qd8AI/src/compiler/optimize.jl:1930
    [5] codegen(output::Symbol, job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget, Enzyme.Compiler.EnzymeCompilerParams}; libraries::Bool, deferred_codegen::Bool, optimize::Bool, toplevel::Bool, strip::Bool, validate::Bool, only_entry::Bool, parent_job::Nothing)
      @ Enzyme.Compiler ~/.julia/packages/Enzyme/qd8AI/src/compiler.jl:5773
    [6] _thunk(job::GPUCompiler.CompilerJob{Enzyme.Compiler.EnzymeTarget, Enzyme.Compiler.EnzymeCompilerParams}, postopt::Bool)
      @ Enzyme.Compiler ~/.julia/packages/Enzyme/qd8AI/src/compiler.jl:6658
    [7] cached_compilation
      @ ~/.julia/packages/Enzyme/qd8AI/src/compiler.jl:6696 [inlined]
    [8] (::Enzyme.Compiler.var"#28593#28594"{DataType, DataType, Enzyme.API.CDerivativeMode, NTuple{5, Bool}, Int64, Bool, Bool, UInt64, DataType})(ctx::LLVM.Context)
      @ Enzyme.Compiler ~/.julia/packages/Enzyme/qd8AI/src/compiler.jl:[676](https://github.com/SciML/SciMLSensitivity.jl/actions/runs/9702392637/job/26781024139?pr=1057#step:6:679)5
    [9] JuliaContext(f::Enzyme.Compiler.var"#28593#28594"{DataType, DataType, Enzyme.API.CDerivativeMode, NTuple{5, Bool}, Int64, Bool, Bool, UInt64, DataType}; kwargs::@Kwargs{})
      @ GPUCompiler ~/.julia/packages/GPUCompiler/05oYT/src/driver.jl:52
   [10] JuliaContext(f::Function)
      @ GPUCompiler ~/.julia/packages/GPUCompiler/05oYT/src/driver.jl:42
   [11] #s2010#28592
      @ ~/.julia/packages/Enzyme/qd8AI/src/compiler.jl:6716 [inlined]
   [12] var"#s2010#28592"(FA::Any, A::Any, TT::Any, Mode::Any, ModifiedBetween::Any, width::Any, ReturnPrimal::Any, ShadowInit::Any, World::Any, ABI::Any, ::Any, ::Type, ::Type, ::Type, tt::Any, ::Type, ::Type, ::Type, ::Type, ::Type, ::Any)
      @ Enzyme.Compiler ./none:0
   [13] (::Core.GeneratedFunctionStub)(::UInt64, ::LineNumberNode, ::Any, ::Vararg{Any})
      @ Core ./boot.jl:602
   [14] autodiff
      @ ~/.julia/packages/Enzyme/qd8AI/src/Enzyme.jl:304 [inlined]

https://github.com/SciML/SciMLSensitivity.jl/pull/1057

https://github.com/SciML/SciMLSensitivity.jl/actions/runs/9702392637/job/26781024139?pr=1057#step:6:682