Skip to content

Remove pystencils.GPU_DEVICE

Michael Kuron requested to merge device_selection into master
  • SerialDataHandling now performs the device selection upon construction. It can also be constructed with an explicit device number to deviate from the default selection.
  • For ParallelDataHandling, the assignment of devices to MPI ranks should be handled by Walberla by calling cudaSetDevice(). It has selectDeviceBasedOnMpiRank for this purpose. I am not sure it actually calls it -- I think it should be called from MPIManager::initializeMPI. Right now everything probably just ends up on the first GPU.
  • The kernel wrapper now determines the correct device by inspecting the fields.
  • gpu_indexing_params needs an explicit device number, I don't think any kind of default is reasonable.
  • Some tests now iterate over all devices instead of using a default device. This is actually the right thing to do because it tests whether the device selection works correctly.

lbmpy's fails since !335 (merged), but that is due to an error in the test, which lbmpy!146 (merged) fixes.

Edited by Michael Kuron

Merge request reports