Gromacs  2020.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
gmx::anonymous_namespace{taskassignment.cpp} Namespace Reference

Functions

std::vector< GpuTaskAssignmentbuildTaskAssignment (const GpuTasksOnRanks &gpuTasksOnRanksOfThisNode, ArrayRef< const int > gpuIds)
 Build data structure of types of GPU tasks on a rank, together with the mapped GPU device IDs, for all GPU tasks on all the ranks of this node. More...
 
bool isAnyGpuSharedBetweenRanks (ArrayRef< const GpuTaskAssignment > gpuTaskAssignments)
 Return whether a GPU device is shared between any ranks. More...
 
size_t countGpuTasksOnThisNode (const GpuTasksOnRanks &gpuTasksOnRanksOfThisNode)
 Counts all the GPU tasks on this node.
 
int countOverAllRanks (MPI_Comm comm, int countOnThisRank)
 Return on each rank the total count over all ranks of all simulations.
 
void barrierOverAllRanks (MPI_Comm comm)
 Barrier over all rank in comm.
 

Function Documentation

std::vector<GpuTaskAssignment> gmx::anonymous_namespace{taskassignment.cpp}::buildTaskAssignment ( const GpuTasksOnRanks &  gpuTasksOnRanksOfThisNode,
ArrayRef< const int >  gpuIds 
)

Build data structure of types of GPU tasks on a rank, together with the mapped GPU device IDs, for all GPU tasks on all the ranks of this node.

Parameters
[in]gpuTasksOnRanksOfThisNodeFor each rank on this node, the set of tasks that are eligible to run on GPUs.
[in]gpuIdsThe user-supplied GPU IDs.
bool gmx::anonymous_namespace{taskassignment.cpp}::isAnyGpuSharedBetweenRanks ( ArrayRef< const GpuTaskAssignment >  gpuTaskAssignments)

Return whether a GPU device is shared between any ranks.

Sharing GPUs among multiple ranks is possible via either user or automated selection.