I am looking into waveform relaxation for my project. Based on a cursory search, it seems to me that there is no registered package specifically for waveform relaxation. I did find an old issue Parallel ODE Solvers · Issue #34 · SciML/OrdinaryDiffEq.jl · GitHub that mentions parallel in time integrators in general; but haven’t seen PRs tagging the same.

@ChrisRackauckas Is there any SciML package in the works for parallel in time integrators in general ?

No and I don’t suspect it for some time. Maybe if a student finds the subject really cool. It’s just the worst way to do it. XBriad is probably the best developed one, and

They boast that they get a performance improvement when they get to 32 cores!

Meanwhile, better methods expose more parallelism to get a cutoff around 8 threads like we show with the extraoplation methods:

Parallelizing Explicit and Implicit Extrapolation Methods for Ordinary Differential Equations | IEEE Conference Publication | IEEE Xplore (free version: [2207.08135] Parallelizing Explicit and Implicit Extrapolation Methods for Ordinary Differential Equations)

It’s just a mathematically dubious way to get the parallelism. There are so many other ways to do it that aren’t parallel-in-time, they just take more math brain work than the naive PiT approaches so they haven’t been investigated much. We are investigating many ways to parallelize ODE solves that actually work, and maybe if some student is really adamant I’ll help get a PiT approach going, but for any student that is smart I’ll point them to parallelism techniques that have more potential.

Thanks for this!

On a tangent: I know that waveform relaxation is mainstream with people doing black-box coupling of PDE solvers (preCICE · GitHub for instance); Assume one solver comes from Trixi.jl and another from Trillinos.

In this context, would this mean that it is more efficient (computationally) to reimplement these solvers than trying patch them together with PiT methods?