Can you try the v1.8-beta3 and nightly to see if the allocations from the interpolations are gone?
https://github.com/SciML/OrdinaryDiffEq.jl/issues/1502
Try the example from Significant allocations with Callbacks (Tsit5) . It’s the same problem as callbacks. That interpolation inference bug makes it so every use of the interpolations has allocations. In theory it was fixed by
https://github.com/JuliaLang/julia/pull/43990
it would be good to get a confirmation of that, since it should be on v1.8. If that’s fixed, then the rest should be much simpler.