Gromacs  2018.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Enumerations | Functions
#include <vector>
+ Include dependency graph for decidegpuusage.h:

Description

Declares functionality for deciding whether tasks will run on GPUs.

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

Enumerations

enum  gmx::TaskTarget : int { Auto, Cpu, Gpu }
 Record where a compute task is targetted.
 

Functions

bool gmx::decideWhetherToUseGpusForNonbondedWithThreadMpi (const TaskTarget nonbondedTarget, const std::vector< int > &gpuIdsToUse, const std::vector< int > &userGpuTaskAssignment, const EmulateGpuNonbonded emulateGpuNonbonded, const bool usingVerletScheme, const bool nonbondedOnGpuIsUseful, const int numRanksPerSimulation)
 Decide whether this thread-MPI simulation will run nonbonded tasks on GPUs. More...
 
bool gmx::decideWhetherToUseGpusForPmeWithThreadMpi (const bool useGpuForNonbonded, const TaskTarget pmeTarget, const std::vector< int > &gpuIdsToUse, const std::vector< int > &userGpuTaskAssignment, const bool canUseGpuForPme, const int numRanksPerSimulation, const int numPmeRanksPerSimulation)
 Decide whether this thread-MPI simulation will run PME tasks on GPUs. More...
 
bool gmx::decideWhetherToUseGpusForNonbonded (const TaskTarget nonbondedTarget, const std::vector< int > &userGpuTaskAssignment, const EmulateGpuNonbonded emulateGpuNonbonded, const bool usingVerletScheme, const bool nonbondedOnGpuIsUseful, const bool gpusWereDetected)
 Decide whether the simulation will try to run nonbonded tasks on GPUs. More...
 
bool gmx::decideWhetherToUseGpusForPme (const bool useGpuForNonbonded, const TaskTarget pmeTarget, const std::vector< int > &userGpuTaskAssignment, const bool canUseGpuForPme, const int numRanksPerSimulation, const int numPmeRanksPerSimulation, const bool gpusWereDetected)
 Decide whether the simulation will try to run tasks of different types on GPUs. More...