Benchmarks for our own new differential equation solver

Hi everyone,

We are developing a new differential equation solver,

function DiffEqBase.__solve(prob::DiffEqBase.AbstractODEProblem{uType,tType,isinplace},
    alg::IRKAlgorithm, udim::Array{floatType,dim},args...;
    s=8,
    dt,
    m=1,
    initial_interp=true,
    save_everystep=true,
    partitioned=false) where {floatType<: Union{Float32,Float64}, uType, tType, isinplace, dim}```

but when I try to execute a benchmark

abstols=reltols=[1e-4, 1e-6]
dts=[10.0, 20.0]

setups = [
Dict(:alg=>Vern9())
Dict(:alg=>IRKGL_simd(),:udim=>udim,:s=>8,:dts=>dts)
]

solnames =[“Vern9”, “IRKGL_simd”]
wp = WorkPrecisionSet(prob,abstols,reltols,setups;appxsol=test_sol,save_everystep=false,numruns=1,maxiters=10^9, names=solnames);


I get the next error,

MethodError: no method matching alg_cache(::IRKGL_simd, ::Array{Float64, 3}, ::Array{Float64, 3}, ::Type{Float64}, …```

Do I something wrong?

Thanks
M.

udim isn’t a supported argument, this should go into IRKAlgorithm. m,s, partitioned, and initial_interp are also not common args, so they should be in the alg.

Other than that, I’d need more details (like the error message) to help more.

You can download the notebook (Benchmark error.html), where you can check the details of the experiment (I do not know if it is enough to help us) from: IRKGL_SIMD.jl/Benchmarks at master · mikelehu/IRKGL_SIMD.jl · GitHub

If we cannot use the BenchmarkTools package, the alternative will be to perform the comparisons manually.

Thanks