impose_default_device_affinity Subroutine

public subroutine impose_default_device_affinity(object_type)

Assign devices to MPI ranks in order. Only works if number of ranks is greater or equal to number of devices Device assigned to rank rr is (rr modulo total_number_of_devices).

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: object_type

Object type. For now this means "solver_type".


Calls

proc~~impose_default_device_affinity~~CallsGraph proc~impose_default_device_affinity impose_default_device_affinity mpi_comm_rank mpi_comm_rank proc~impose_default_device_affinity->mpi_comm_rank proc~get_communicator get_communicator proc~impose_default_device_affinity->proc~get_communicator proc~get_device_count get_device_count proc~impose_default_device_affinity->proc~get_device_count proc~handle_error handle_error proc~impose_default_device_affinity->proc~handle_error proc~set_device_id set_device_id proc~impose_default_device_affinity->proc~set_device_id proc~get_device_count->proc~handle_error interface~cxx_get_device_count cxx_get_device_count proc~get_device_count->interface~cxx_get_device_count none~handle_error error_handler_t%handle_error proc~handle_error->none~handle_error proc~set_device_id->proc~handle_error interface~cxx_set_device cxx_set_device proc~set_device_id->interface~cxx_set_device

Called by

proc~~impose_default_device_affinity~~CalledByGraph proc~impose_default_device_affinity impose_default_device_affinity program~benchmark_helmholtz_solvers benchmark_helmholtz_solvers program~benchmark_helmholtz_solvers->proc~impose_default_device_affinity