SciML / DiffEqFlux.jl

Pre-built implicit layer architectures with O(1) backprop, GPUs, and stiff+non-stiff DE solvers, demonstrating scientific machine learning (SciML) and physics-informed machine learning methods
https://docs.sciml.ai/DiffEqFlux/stable
MIT License
865 stars 153 forks source link

Work around cache corruption issue. #915

Closed maleadt closed 4 months ago

maleadt commented 6 months ago

Hmm, this worked locally. Let me try something else.

EDIT: New workaround successfully gets past the Not implemented exception. cc @ChrisRackauckas

ChrisRackauckas commented 5 months ago

https://buildkite.com/julialang/diffeqflux-dot-jl/builds/1551#018eb939-7275-434a-b2d8-a59fbbd11a9f/652-736 Looks like it got some Not Implemented when the next run was done.

maleadt commented 5 months ago

I switched to --compiled-modules=no; that seems to work every time.

ChrisRackauckas commented 5 months ago

The error is pointing to the same spot that said Not Implemented, and it looks internal to CUDA/LLVM?

  exception =
│    InvalidIRError: compiling MethodInstance for CUDA.partial_mapreduce_grid(::typeof(identity), ::typeof(DiffEqBase.abs2_and_sum), ::Float32, ::CartesianIndices{1, Tuple{Base.OneTo{Int64}}}, ::CartesianIndices{1, Tuple{Base.OneTo{Int64}}}, ::Val{true}, ::CUDA.CuDeviceMatrix{Float32, 1}, ::Base.Broadcast.Broadcasted{CUDA.CuArrayStyle{1, CUDA.Mem.DeviceBuffer}, Tuple{Base.OneTo{Int64}}, typeof(DiffEqBase.UNITLESS_ABS2), Tuple{CUDA.CuDeviceVector{Float32, 1}}}) resulted in invalid LLVM IR
│    Reason: unsupported call to an unknown function (call to julia.new_gc_frame)
│    Reason: unsupported call to an unknown function (call to julia.push_gc_frame)
│    Reason: unsupported call to an unknown function (call to julia.get_gc_frame_slot)
│    Reason: unsupported dynamic function invocation (call to pointerref(ptr::Core.LLVMPtr{T, A}, i::I, ::Val{align}) where {T, A, I, align} @ LLVM.Interop none:0)
│    Stacktrace:
│      [1] unsafe_load
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/LLVM/bzSzE/src/interop/pointer.jl:85
│      [2] arrayref_bits
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:91
│      [3] #arrayref
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:85
│      [4] getindex
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:164
│      [5] getindex
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:175
│      [6] _broadcast_getindex
│        @ ./broadcast.jl:662
│      [7] _getindex
│        @ ./broadcast.jl:706
│      [8] _broadcast_getindex
│        @ ./broadcast.jl:681
│      [9] getindex
│        @ ./broadcast.jl:636
│     [10] _map_getindex
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:85
│     [11] partial_mapreduce_grid
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:122
│    Reason: unsupported dynamic function invocation (call to UNITLESS_ABS2)
│    Stacktrace:
│     [1] _broadcast_getindex_evalf
│       @ ./broadcast.jl:709
│     [2] _broadcast_getindex
│       @ ./broadcast.jl:682
│     [3] getindex
│       @ ./broadcast.jl:636
│     [4] _map_getindex
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:85
│     [5] partial_mapreduce_grid
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:122
│    Reason: unsupported dynamic function invocation (call to abs2_and_sum)
│    Stacktrace:
│     [1] partial_mapreduce_grid
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:122
│    Reason: unsupported dynamic function invocation (call to reduce_block)
│    Stacktrace:
│     [1] partial_mapreduce_grid
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:126
│    Reason: unsupported dynamic function invocation (call to convert)
│    Stacktrace:
│     [1] setindex!
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:166
│     [2] setindex!
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:178
│     [3] partial_mapreduce_grid
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:130
│    Reason: unsupported call to an unknown function (call to julia.pop_gc_frame)
│    Reason: unsupported dynamic function invocation (call to pointerset(ptr::Core.LLVMPtr{T, A}, x::T, i::I, ::Val{align}) where {T, A, I, align} @ LLVM.Interop none:0)
│    Stacktrace:
│     [1] unsafe_store!
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/LLVM/bzSzE/src/interop/pointer.jl:88
│     [2] arrayset_bits
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:134
│     [3] #arrayset
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:127
│     [4] setindex!
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:166
│     [5] setindex!
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/device/array.jl:178
│     [6] partial_mapreduce_grid
│       @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:130
│    Hint: catch this exception as `err` and call `code_typed(err; interactive = true)` to introspect the erronous code with Cthulhu.jl
│    Stacktrace:
│      [1] check_ir(job::GPUCompiler.CompilerJob{GPUCompiler.PTXCompilerTarget, CUDA.CUDACompilerParams}, args::LLVM.Module)
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/validation.jl:147
│      [2] macro expansion
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:440 [inlined]
│      [3] macro expansion
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/TimerOutputs/RsWnF/src/TimerOutput.jl:253 [inlined]
│      [4] macro expansion
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:439 [inlined]
│      [5] emit_llvm(job::GPUCompiler.CompilerJob; libraries::Bool, toplevel::Bool, optimize::Bool, cleanup::Bool, only_entry::Bool, validate::Bool)
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/utils.jl:92
│      [6] emit_llvm
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/utils.jl:86 [inlined]
│      [7] codegen(output::Symbol, job::GPUCompiler.CompilerJob; libraries::Bool, toplevel::Bool, optimize::Bool, cleanup::Bool, strip::Bool, validate::Bool, only_entry::Bool, parent_job::Nothing)
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:129
│      [8] compile(target::Symbol, job::GPUCompiler.CompilerJob; libraries::Bool, toplevel::Bool, optimize::Bool, cleanup::Bool, strip::Bool, validate::Bool, only_entry::Bool)
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:106
│      [9] compile
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:98 [inlined]
│     [10] #1072
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/compilation.jl:247 [inlined]
│     [11] JuliaContext(f::CUDA.var"#1072#1075"{GPUCompiler.CompilerJob{GPUCompiler.PTXCompilerTarget, CUDA.CUDACompilerParams}})
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/driver.jl:47
│     [12] compile(job::GPUCompiler.CompilerJob)
│        @ CUDA ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/compilation.jl:246
│     [13] actual_compilation(cache::Dict{Any, CUDA.CuFunction}, src::Core.MethodInstance, world::UInt64, cfg::GPUCompiler.CompilerConfig{GPUCompiler.PTXCompilerTarget, CUDA.CUDACompilerParams}, compiler::typeof(CUDA.compile), linker::typeof(CUDA.link))
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/execution.jl:125
│     [14] cached_compilation(cache::Dict{Any, CUDA.CuFunction}, src::Core.MethodInstance, cfg::GPUCompiler.CompilerConfig{GPUCompiler.PTXCompilerTarget, CUDA.CUDACompilerParams}, compiler::Function, linker::Function)
│        @ GPUCompiler ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUCompiler/U36Ed/src/execution.jl:103
│     [15] macro expansion
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/execution.jl:367 [inlined]
│     [16] macro expansion
│        @ ./lock.jl:267 [inlined]
│     [17] cufunction(f::typeof(CUDA.partial_mapreduce_grid), tt::Type{Tuple{typeof(identity), typeof(DiffEqBase.abs2_and_sum), Float32, CartesianIndices{1, Tuple{Base.OneTo{Int64}}}, CartesianIndices{1, Tuple{Base.OneTo{Int64}}}, Val{true}, CUDA.CuDeviceMatrix{Float32, 1}, Base.Broadcast.Broadcasted{CUDA.CuArrayStyle{1, CUDA.Mem.DeviceBuffer}, Tuple{Base.OneTo{Int64}}, typeof(DiffEqBase.UNITLESS_ABS2), Tuple{CUDA.CuDeviceVector{Float32, 1}}}}}; kwargs::@Kwargs{})
│        @ CUDA ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/execution.jl:362
│     [18] cufunction
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/execution.jl:359 [inlined]
│     [19] macro expansion
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/compiler/execution.jl:112 [inlined]
│     [20] mapreducedim!(f::typeof(identity), op::typeof(DiffEqBase.abs2_and_sum), R::CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, A::Base.Broadcast.Broadcasted{CUDA.CuArrayStyle{1, CUDA.Mem.DeviceBuffer}, Tuple{Base.OneTo{Int64}}, typeof(DiffEqBase.UNITLESS_ABS2), Tuple{CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}}}; init::Float32)
│        @ CUDA ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:234
│     [21] mapreducedim!
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/CUDA/htRwP/src/mapreduce.jl:169 [inlined]
│     [22] _mapreduce(f::typeof(DiffEqBase.UNITLESS_ABS2), op::typeof(DiffEqBase.abs2_and_sum), As::CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}; dims::Colon, init::Float32)
│        @ GPUArrays ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUArrays/OKkAu/src/host/mapreduce.jl:67
│     [23] _mapreduce
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUArrays/OKkAu/src/host/mapreduce.jl:33 [inlined]
│     [24] mapreduce
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/GPUArrays/OKkAu/src/host/mapreduce.jl:28 [inlined]
│     [25] UNITLESS_ABS2
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/common_defaults.jl:7 [inlined]
│     [26] ODE_DEFAULT_NORM
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/common_defaults.jl:76 [inlined]
│     [27] __init(prob::SciMLBase.ODEProblem{CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, Tuple{Float32, Float32}, false, @NamedTuple{layer_1::@NamedTuple{}, layer_2::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}, layer_3::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}}, SciMLBase.ODEFunction{false, SciMLBase.AutoSpecialize, typeof(Main.__atexample__named__gpu.dudt2_), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, Nothing, Nothing, Nothing}, @Kwargs{}, SciMLBase.StandardODEProblem}, alg::OrdinaryDiffEq.Tsit5{typeof(OrdinaryDiffEq.trivial_limiter!), typeof(OrdinaryDiffEq.trivial_limiter!), Static.False}, timeseries_init::Tuple{}, ts_init::Tuple{}, ks_init::Tuple{}, recompile::Type{Val{true}}; saveat::StepRangeLen{Float32, Float64, Float64, Int64}, tstops::Tuple{}, d_discontinuities::Tuple{}, save_idxs::Nothing, save_everystep::Bool, save_on::Bool, save_start::Bool, save_end::Nothing, callback::Nothing, dense::Bool, calck::Bool, dt::Float32, dtmin::Float32, dtmax::Float32, force_dtmin::Bool, adaptive::Bool, gamma::Rational{Int64}, abstol::Nothing, reltol::Nothing, qmin::Rational{Int64}, qmax::Int64, qsteady_min::Int64, qsteady_max::Int64, beta1::Nothing, beta2::Nothing, qoldinit::Rational{Int64}, controller::Nothing, fullnormalize::Bool, failfactor::Int64, maxiters::Int64, internalnorm::typeof(DiffEqBase.ODE_DEFAULT_NORM), internalopnorm::typeof(LinearAlgebra.opnorm), isoutofdomain::typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN), unstable_check::typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK), verbose::Bool, timeseries_errors::Bool, dense_errors::Bool, advance_to_tstop::Bool, stop_at_next_tstop::Bool, initialize_save::Bool, progress::Bool, progress_steps::Int64, progress_name::String, progress_message::typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE), progress_id::Symbol, userdata::Nothing, allow_extrapolation::Bool, initialize_integrator::Bool, alias_u0::Bool, alias_du0::Bool, initializealg::OrdinaryDiffEq.DefaultInit, kwargs::@Kwargs{})
│        @ OrdinaryDiffEq ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/OrdinaryDiffEq/ZbQoo/src/solve.jl:321
│     [28] __init (repeats 5 times)
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/OrdinaryDiffEq/ZbQoo/src/solve.jl:11 [inlined]
│     [29] #__solve#761
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/OrdinaryDiffEq/ZbQoo/src/solve.jl:6 [inlined]
│     [30] __solve
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/OrdinaryDiffEq/ZbQoo/src/solve.jl:1 [inlined]
│     [31] #solve_call#44
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/solve.jl:612 [inlined]
│     [32] solve_call
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/solve.jl:569 [inlined]
│     [33] solve_up(prob::SciMLBase.ODEProblem{CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, Tuple{Float32, Float32}, false, @NamedTuple{layer_1::@NamedTuple{}, layer_2::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}, layer_3::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}}, SciMLBase.ODEFunction{false, SciMLBase.AutoSpecialize, typeof(Main.__atexample__named__gpu.dudt2_), LinearAlgebra.UniformScaling{Bool}, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, Nothing, typeof(SciMLBase.DEFAULT_OBSERVED), Nothing, Nothing, Nothing, Nothing}, @Kwargs{}, SciMLBase.StandardODEProblem}, sensealg::Nothing, u0::CUDA.CuArray{Float32, 1, CUDA.Mem.DeviceBuffer}, p::@NamedTuple{layer_1::@NamedTuple{}, layer_2::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}, layer_3::@NamedTuple{weight::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}, bias::CUDA.CuArray{Float32, 2, CUDA.Mem.DeviceBuffer}}}, args::OrdinaryDiffEq.Tsit5{typeof(OrdinaryDiffEq.trivial_limiter!), typeof(OrdinaryDiffEq.trivial_limiter!), Static.False}; kwargs::@Kwargs{saveat::StepRangeLen{Float32, Float64, Float64, Int64}})
│        @ DiffEqBase ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/solve.jl:1080
│     [34] solve_up
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/solve.jl:1066 [inlined]
│     [35] #solve#51
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/DiffEqBase/O8cUq/src/solve.jl:1003 [inlined]
│     [36] top-level scope
│        @ GPUs.md:59
│     [37] eval
│        @ ./boot.jl:385 [inlined]
│     [38] #58
│        @ ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/Documenter/2OZOh/src/expander_pipeline.jl:754 [inlined]
│     [39] cd(f::Documenter.var"#58#60"{Module, Expr}, dir::String)
│        @ Base.Filesystem ./file.jl:112
│     [40] (::Documenter.var"#57#59"{Documenter.Page, Module, Expr})()
│        @ Documenter ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/Documenter/2OZOh/src/expander_pipeline.jl:753
│     [41] (::IOCapture.var"#4#7"{DataType, Documenter.var"#57#59"{Documenter.Page, Module, Expr}, IOContext{Base.PipeEndpoint}, IOContext{Base.PipeEndpoint}, Base.TTY, Base.TTY})()
│        @ IOCapture ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/IOCapture/Rzdxd/src/IOCapture.jl:161
│     [42] with_logstate(f::Function, logstate::Any)
│        @ Base.CoreLogging ./logging.jl:515
│     [43] with_logger
│        @ ./logging.jl:627 [inlined]
│     [44] capture(f::Documenter.var"#57#59"{Documenter.Page, Module, Expr}; rethrow::Type, color::Bool, passthrough::Bool, capture_buffer::IOBuffer)
│        @ IOCapture ~/.cache/julia-buildkite-plugin/depots/64dbdc29-d6e3-4071-807c-a2eda6e09bd8/packages/IOCapture/Rzdxd/src/IOCapture.jl:158
│     [45] runner(::Type{Documenter.Expanders.ExampleBlocks}, node::MarkdownAST.Node{Nothing}, page::Documenter.Page, doc::Documenter.Document)
ChrisRackauckas commented 5 months ago

mapreduce generally uses Core.return_type. It shouldn't be needed here since init is used, but maybe it's some weird inference thing?

https://github.com/SciML/DiffEqBase.jl/blob/master/src/common_defaults.jl#L1-L8

ChrisRackauckas commented 4 months ago

These docs mysteriously started building correctly again. SciMLSensitivity.jl and SciMLDocs both have the issue too though...