X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?p=alexxy%2Fgromacs.git;a=blobdiff_plain;f=src%2Fgromacs%2Ftaskassignment%2Fdecidesimulationworkload.cpp;fp=src%2Fgromacs%2Ftaskassignment%2Fdecidesimulationworkload.cpp;h=a6a98046241c7c93c8d5c69c6aa079ba1b0741bd;hp=fb383e3a2569d99b07d9bd5271783ad0760e7e2e;hb=8e4184a2387fb1b36361b07c9c3df40076d0250d;hpb=4ab77f8b8162e37a89f7bdbd89709528326d7c26 diff --git a/src/gromacs/taskassignment/decidesimulationworkload.cpp b/src/gromacs/taskassignment/decidesimulationworkload.cpp index fb383e3a25..a6a9804624 100644 --- a/src/gromacs/taskassignment/decidesimulationworkload.cpp +++ b/src/gromacs/taskassignment/decidesimulationworkload.cpp @@ -76,8 +76,15 @@ SimulationWorkload createSimulationWorkload(const t_inputrec& inputrec, simulationWorkload.useGpuPmeFft = (pmeRunMode == PmeRunMode::Mixed); simulationWorkload.useGpuBonded = useGpuForBonded; simulationWorkload.useGpuUpdate = useGpuForUpdate; - simulationWorkload.useGpuBufferOps = + simulationWorkload.useGpuXBufferOps = (devFlags.enableGpuBufferOps || useGpuForUpdate) && !inputrec.useMts; + simulationWorkload.useGpuFBufferOps = + (devFlags.enableGpuBufferOps || useGpuForUpdate) && !inputrec.useMts; + if (simulationWorkload.useGpuXBufferOps || simulationWorkload.useGpuFBufferOps) + { + GMX_ASSERT(simulationWorkload.useGpuNonbonded, + "Can only offload X/F buffer ops if nonbonded computation is also offloaded"); + } simulationWorkload.havePpDomainDecomposition = havePpDomainDecomposition; simulationWorkload.useCpuHaloExchange = havePpDomainDecomposition && !useGpuDirectHalo; simulationWorkload.useGpuHaloExchange = useGpuDirectHalo;