TUDelft-CNS-ATM / bluesky

The open source air traffic simulator
GNU General Public License v3.0
388 stars 249 forks source link

Support for GPU (CUDA or similar) massive parallelization?? #521

Open kchour1 opened 3 months ago

kchour1 commented 3 months ago

Is there any plan to incorporate GPU-based calculations to massively speed-up the simulation? This can be done for conflict-detection-resolution, propagating aircraft dynamics forward, or to allow for multiple simulations in parallel.

Of course for small scenario instances, I expect numpy calculations to be much faster. But at some point as the number of agents increase, these calculations may become too expensive on the cpu. Also, we would need to figure out a way to keep the current python API the same.

Perhaps, this is a new thesis project for a student right 😉?

jooste commented 1 month ago

Hi @kchour1,

There are different approaches to this. The easiest way would be to use a JIT compiler approach like Numba. And you can also of course more directly use something like CUDA. With BlueSky's plugin architecture it is easy to make an additional implementation for e.g., the state-based CD module, which you can then select if you want to make use of the GPU to speed up the simulation.