Closes #21. This PR implements functionality for distributed computations on multiple GPUs using MPI. It adds utility functions for launching kernels on a staggered grid with a set of boundary conditions, including pipelining of computations on different threads and GPU streams.
Closes #21. This PR implements functionality for distributed computations on multiple GPUs using MPI. It adds utility functions for launching kernels on a staggered grid with a set of boundary conditions, including pipelining of computations on different threads and GPU streams.