I figured.
I have done some concrete comparisons of the differentiation using DiffEqOperators and my own simple implementations.
For the 1D case i used a simple finite difference Matrix multiplication compared to DiffEqOperators.
For this i found similar performance.
In de 2D case however i found DiffEqOperators.jl to be ~100x slower.
For my own implementation i used this method:
Kronecker sum Laplacian
And the following implementation for DiffEqOperators
Qx, Qy = Dirichlet0BC(Float64, size(u));
Dxx = CenteredDifference{1}(2,2,dx,N);
Dyy = CenteredDifference{2}(2,2,dx,N);
A = (Dxx + Dyy)*compose(Qx, Qy);
A*u
Which gives me these warnings:
┌ Warning: #= C:\Users\siemd\.julia\packages\DiffEqOperators\Xddum\src\derivative_operators\convolutions.jl:79 =#:
│ `LoopVectorization.check_args` on your inputs failed; running fallback `@inbounds @fastmath` loop instead.
│ Use `warn_check_args=false`, e.g. `@turbo warn_check_args=false ...`, to disable this warning.
└ @ DiffEqOperators C:\Users\siemd\.julia\packages\LoopVectorization\wLMFa\src\condense_loopset.jl:825
┌ Warning: #= C:\Users\siemd\.julia\packages\DiffEqOperators\Xddum\src\derivative_operators\convolutions.jl:49 =#:
│ `LoopVectorization.check_args` on your inputs failed; running fallback `@inbounds @fastmath` loop instead.
│ Use `warn_check_args=false`, e.g. `@turbo warn_check_args=false ...`, to disable this warning.
└ @ DiffEqOperators C:\Users\siemd\.julia\packages\LoopVectorization\wLMFa\src\condense_loopset.jl:825
┌ Warning: #= C:\Users\siemd\.julia\packages\DiffEqOperators\Xddum\src\derivative_operators\convolutions.jl:98 =#:
│ `LoopVectorization.check_args` on your inputs failed; running fallback `@inbounds @fastmath` loop instead.
│ Use `warn_check_args=false`, e.g. `@turbo warn_check_args=false ...`, to disable this warning.
└ @ DiffEqOperators C:\Users\siemd\.julia\packages\LoopVectorization\wLMFa\src\condense_loopset.jl:825
I updated all my packages but still receive these warnings.
And using Julia version 1.6.3.
What can i do to fix these warnings and improve performance?