Closed April-Hannah-Lena closed 8 months ago
Ok so I've reduced the performance difference down to ~2x with comparable memory use. The benchmark file is added to the repo for reproducibility; here are the results:
Lorenz system: mapping a box covering a nonzero equillibrium (top: hardcoded RK4, middle: using DynamicalSystems, bottom: Using DifferentialEquations)
Henon system: computing the relative attractor (top: Simply using the map, bottom: using DynamicalSystems)
I'll add some info about using DynamicalSystems into the docs, then this PR will be ready.
Ok, awesome. This seems to be ready, so can I merge it?
Alright, it is now ready to merge. I just wanted to test the PR on a GPU first, tests indeed pass.
This is a very naive extension to add compatibility for
DynamicalSystem
types. This would make using GAIO.jl an easy addition to a julia dynamical system analysis pipeline, and allow one to use the integrators from DifferentialEquaitons.jl. This implementation is highly inefficient. Unfortunately there is a ton of overhead within DifferentialEquations, so I don't know if it's even possible to make an efficient implementation. I'll keep trying some things.