Gromacs  2025-dev-20240718-982dfdc
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations
#include <vector>
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/gmxmpi.h"
+ Include dependency graph for taskassignment.h:
+ This graph shows which files directly or indirectly include this file:

Description

Declares high-level functionality for managing assigning tasks on ranks of a node to hardware on that node, and the factory function to build the correct flavours of gmx::INodeTaskAssigner required to implement the user's requirements.

Author
Mark Abraham mark..nosp@m.j.ab.nosp@m.raham.nosp@m.@gma.nosp@m.il.co.nosp@m.m

Classes

struct  gmx::GpuTaskMapping
 Specifies the GPU deviceID_ available for task_ to use. More...
 
class  gmx::GpuTaskAssignmentsBuilder
 Builder for the GpuTaskAssignments for all ranks on this node. More...
 
class  gmx::GpuTaskAssignments
 Contains the GPU task assignment for all ranks on this physical node. More...
 

Typedefs

using gmx::GpuTaskAssignment = std::vector< GpuTaskMapping >
 Container of GPU tasks on a rank, specifying the task type and GPU device ID, e.g. potentially ready for consumption by the modules on that rank.
 

Enumerations

enum  gmx::GpuTask : int { gmx::GpuTask::Nonbonded, gmx::GpuTask::Pme, gmx::GpuTask::Count }
 Types of compute tasks that can be run on a GPU. More...