Skip to content

Instantly share code, notes, and snippets.

@PiotrSokol
Created January 22, 2021 02:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save PiotrSokol/0432aa4862590a5e9ae55e4e9f67e0f7 to your computer and use it in GitHub Desktop.
Save PiotrSokol/0432aa4862590a5e9ae55e4e9f67e0f7 to your computer and use it in GitHub Desktop.
MWE for LSTM/CUDA error
ERROR: MethodError: no method matching unsafe_convert(::Type{Float64}, ::ForwardDiff.Dual{Nothing,Float64,8})
Closest candidates are:
unsafe_convert(::Type{T}, ::T) where T at essentials.jl:390
unsafe_convert(::Type{Ref{T}}, ::Any) where T at refpointer.jl:61
unsafe_convert(::Type{PtrOrCuPtr{T}}, ::Any) where T at /home/piotr/.julia/packages/CUDA/FlHUF/src/pointer.jl:118
...
Stacktrace:
[1] macro expansion at /home/piotr/.julia/packages/CUDA/FlHUF/lib/utils/call.jl:42 [inlined]
[2] macro expansion at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/libcudnn.jl:919 [inlined]
[3] macro expansion at /home/piotr/.julia/packages/CUDA/FlHUF/src/pool.jl:430 [inlined]
[4] macro expansion at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/error.jl:28 [inlined]
[5] cudnnSetActivationDescriptor(::Ptr{Nothing}, ::CUDA.CUDNN.cudnnActivationMode_t, ::CUDA.CUDNN.cudnnNanPropagation_t, ::ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8}) at /home/piotr/.julia/packages/CUDA/FlHUF/lib/utils/call.jl:93
[6] CUDA.CUDNN.ActivationDesc(::CUDA.CUDNN.cudnnActivationMode_t, ::ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8}, ::CUDA.CUDNN.cudnnNanPropagation_t) at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/activation.jl:14
[7] cudnnActivationForward(::CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},4}, ::CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},4}; mode::CUDA.CUDNN.cudnnActivationMode_t, coeff::Bool, reluNanOpt::CUDA.CUDNN.cudnnNanPropagation_t, alpha::Bool, beta::Bool) at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/activation.jl:27
[8] (::CUDA.CUDNN.var"#591#597")(::CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}, ::CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}) at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/nnlib.jl:241
[9] materialize(::Base.Broadcast.Broadcasted{CUDA.CuArrayStyle{1},Nothing,typeof(σ),Tuple{CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}}}) at /home/piotr/.julia/packages/CUDA/FlHUF/lib/cudnn/nnlib.jl:265
[10] (::Flux.LSTMCell{CuArray{Float32,2},CuArray{Float32,1}})(::Tuple{CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1},CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}}, ::CuArray{Float32,1}) at /home/piotr/.julia/packages/Flux/q3zeA/src/layers/recurrent.jl:120
[11] dudt_(::CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}, ::CuArray{Float32,1}, ::Float32) at ./REPL[13]:1
[12] ODEFunction at /home/piotr/.julia/packages/DiffEqBase/ORQhu/src/diffeqfunction.jl:248 [inlined]
[13] UDerivativeWrapper at /home/piotr/.julia/packages/DiffEqBase/ORQhu/src/function_wrappers.jl:30 [inlined]
[14] vector_mode_dual_eval at /home/piotr/.julia/packages/ForwardDiff/kU1ce/src/apiutils.jl:37 [inlined]
[15] vector_mode_jacobian(::DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}}, ::CuArray{Float32,1}, ::ForwardDiff.JacobianConfig{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8,CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}}) at /home/piotr/.julia/packages/ForwardDiff/kU1ce/src/jacobian.jl:147
[16] jacobian(::Function, ::CuArray{Float32,1}, ::ForwardDiff.JacobianConfig{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8,CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}}, ::Val{true}) at /home/piotr/.julia/packages/ForwardDiff/kU1ce/src/jacobian.jl:21
[17] jacobian(::Function, ::CuArray{Float32,1}, ::ForwardDiff.JacobianConfig{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8,CuArray{ForwardDiff.Dual{ForwardDiff.Tag{DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},Float32},Float32,8},1}}) at /home/piotr/.julia/packages/ForwardDiff/kU1ce/src/jacobian.jl:19
[18] #forwarddiff_color_jacobian#17 at /home/piotr/.julia/packages/SparseDiffTools/6W9KH/src/differentiation/compute_jacobian_ad.jl:74 [inlined]
[19] jacobian_autodiff(::Function, ::CuArray{Float32,1}, ::Function, ::Rosenbrock23{0,true,DefaultLinSolve,DataType}) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/derivative_wrappers.jl:49
[20] jacobian(::Function, ::CuArray{Float32,1}, ::OrdinaryDiffEq.ODEIntegrator{Rosenbrock23{0,true,DefaultLinSolve,DataType},false,CuArray{Float32,1},Nothing,Float32,CuArray{Float32,1},Float32,Float32,Float32,Array{CuArray{Float32,1},1},ODESolution{Float32,2,Array{CuArray{Float32,1},1},Nothing,Nothing,Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem},Rosenbrock23{0,true,DefaultLinSolve,DataType},OrdinaryDiffEq.InterpolationData{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Array{CuArray{Float32,1},1},Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}},DiffEqBase.DEStats},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve},OrdinaryDiffEq.DEOptions{Float32,Float32,Float32,Float32,typeof(DiffEqBase.ODE_DEFAULT_NORM),typeof(LinearAlgebra.opnorm),CallbackSet{Tuple{},Tuple{}},typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN),typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE),typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK),DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},Nothing,Nothing,Int64,Tuple{},Tuple{},Tuple{}},CuArray{Float32,1},Float32,Nothing,OrdinaryDiffEq.DefaultInit}) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/derivative_wrappers.jl:78
[21] calc_J at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/derivative_utils.jl:68 [inlined]
[22] calc_W(::OrdinaryDiffEq.ODEIntegrator{Rosenbrock23{0,true,DefaultLinSolve,DataType},false,CuArray{Float32,1},Nothing,Float32,CuArray{Float32,1},Float32,Float32,Float32,Array{CuArray{Float32,1},1},ODESolution{Float32,2,Array{CuArray{Float32,1},1},Nothing,Nothing,Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem},Rosenbrock23{0,true,DefaultLinSolve,DataType},OrdinaryDiffEq.InterpolationData{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Array{CuArray{Float32,1},1},Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}},DiffEqBase.DEStats},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve},OrdinaryDiffEq.DEOptions{Float32,Float32,Float32,Float32,typeof(DiffEqBase.ODE_DEFAULT_NORM),typeof(LinearAlgebra.opnorm),CallbackSet{Tuple{},Tuple{}},typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN),typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE),typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK),DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},Nothing,Nothing,Int64,Tuple{},Tuple{},Tuple{}},CuArray{Float32,1},Float32,Nothing,OrdinaryDiffEq.DefaultInit}, ::OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}, ::Float32, ::Bool, ::Bool) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/derivative_utils.jl:495
[23] calc_W(::OrdinaryDiffEq.ODEIntegrator{Rosenbrock23{0,true,DefaultLinSolve,DataType},false,CuArray{Float32,1},Nothing,Float32,CuArray{Float32,1},Float32,Float32,Float32,Array{CuArray{Float32,1},1},ODESolution{Float32,2,Array{CuArray{Float32,1},1},Nothing,Nothing,Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem},Rosenbrock23{0,true,DefaultLinSolve,DataType},OrdinaryDiffEq.InterpolationData{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Array{CuArray{Float32,1},1},Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}},DiffEqBase.DEStats},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve},OrdinaryDiffEq.DEOptions{Float32,Float32,Float32,Float32,typeof(DiffEqBase.ODE_DEFAULT_NORM),typeof(LinearAlgebra.opnorm),CallbackSet{Tuple{},Tuple{}},typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN),typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE),typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK),DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},Nothing,Nothing,Int64,Tuple{},Tuple{},Tuple{}},CuArray{Float32,1},Float32,Nothing,OrdinaryDiffEq.DefaultInit}, ::OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}, ::Float32, ::Bool) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/derivative_utils.jl:472
[24] perform_step!(::OrdinaryDiffEq.ODEIntegrator{Rosenbrock23{0,true,DefaultLinSolve,DataType},false,CuArray{Float32,1},Nothing,Float32,CuArray{Float32,1},Float32,Float32,Float32,Array{CuArray{Float32,1},1},ODESolution{Float32,2,Array{CuArray{Float32,1},1},Nothing,Nothing,Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem},Rosenbrock23{0,true,DefaultLinSolve,DataType},OrdinaryDiffEq.InterpolationData{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Array{CuArray{Float32,1},1},Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}},DiffEqBase.DEStats},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve},OrdinaryDiffEq.DEOptions{Float32,Float32,Float32,Float32,typeof(DiffEqBase.ODE_DEFAULT_NORM),typeof(LinearAlgebra.opnorm),CallbackSet{Tuple{},Tuple{}},typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN),typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE),typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK),DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},Nothing,Nothing,Int64,Tuple{},Tuple{},Tuple{}},CuArray{Float32,1},Float32,Nothing,OrdinaryDiffEq.DefaultInit}, ::OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}, ::Bool) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/perform_step/rosenbrock_perform_step.jl:163
[25] perform_step! at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/perform_step/rosenbrock_perform_step.jl:150 [inlined]
[26] solve!(::OrdinaryDiffEq.ODEIntegrator{Rosenbrock23{0,true,DefaultLinSolve,DataType},false,CuArray{Float32,1},Nothing,Float32,CuArray{Float32,1},Float32,Float32,Float32,Array{CuArray{Float32,1},1},ODESolution{Float32,2,Array{CuArray{Float32,1},1},Nothing,Nothing,Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem},Rosenbrock23{0,true,DefaultLinSolve,DataType},OrdinaryDiffEq.InterpolationData{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Array{CuArray{Float32,1},1},Array{Float32,1},Array{Array{CuArray{Float32,1},1},1},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve}},DiffEqBase.DEStats},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},OrdinaryDiffEq.Rosenbrock23ConstantCache{Float32,DiffEqBase.TimeDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},CuArray{Float32,1},CuArray{Float32,1}},DiffEqBase.UDerivativeWrapper{ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Float32,CuArray{Float32,1}},CuArray{Float32,2},CUDA.CUSOLVER.CuQR{Float32,CuArray{Float32,2}},DefaultLinSolve},OrdinaryDiffEq.DEOptions{Float32,Float32,Float32,Float32,typeof(DiffEqBase.ODE_DEFAULT_NORM),typeof(LinearAlgebra.opnorm),CallbackSet{Tuple{},Tuple{}},typeof(DiffEqBase.ODE_DEFAULT_ISOUTOFDOMAIN),typeof(DiffEqBase.ODE_DEFAULT_PROG_MESSAGE),typeof(DiffEqBase.ODE_DEFAULT_UNSTABLE_CHECK),DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},DataStructures.BinaryHeap{Float32,Base.Order.ForwardOrdering},Nothing,Nothing,Int64,Tuple{},Tuple{},Tuple{}},CuArray{Float32,1},Float32,Nothing,OrdinaryDiffEq.DefaultInit}) at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/solve.jl:447
[27] #__solve#398 at /home/piotr/.julia/packages/OrdinaryDiffEq/5GBYL/src/solve.jl:5 [inlined]
[28] #solve_call#447 at /home/piotr/.julia/packages/DiffEqBase/ORQhu/src/solve.jl:65 [inlined]
[29] solve_up(::ODEProblem{CuArray{Float32,1},Tuple{Float32,Float32},false,CuArray{Float32,1},ODEFunction{false,typeof(dudt_),LinearAlgebra.UniformScaling{Bool},Nothing,typeof(basic_tgrad),Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}},DiffEqBase.StandardODEProblem}, ::Nothing, ::CuArray{Float32,1}, ::CuArray{Float32,1}, ::Rosenbrock23{0,true,DefaultLinSolve,DataType}; kwargs::Base.Iterators.Pairs{Symbol,InterpolatingAdjoint{0,true,Val{:central},ZygoteVJP,Bool},Tuple{Symbol},NamedTuple{(:sense,),Tuple{InterpolatingAdjoint{0,true,Val{:central},ZygoteVJP,Bool}}}}) at /home/piotr/.julia/packages/DiffEqBase/ORQhu/src/solve.jl:86
[30] #solve#448 at /home/piotr/.julia/packages/DiffEqBase/ORQhu/src/solve.jl:74 [inlined]
[31] top-level scope at REPL[16]:1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment