PME GPU does not support interpolation orders other than 4?!

GROMACS version: 2020.2
GROMACS modification: No
Hi,
I am trying to use all 4 GPUs I have on my node, so I am using the following command:

export GMX_GPU_DD_COMMS=true
export GMX_GPU_PME_PP_COMMS=true
export GMX_FORCE_UPDATE_DEFAULT_GPU=true

gmx mdrun -nb gpu -pme gpu -bonded gpu -update gpu -ntmpi 4 -ntomp 7 -npme 1 -pin on -pinstride 1 -s nvt.tpr -v -deffnm nvt

with pme_order=6, I get the following error:

“Cannot compute PME interactions on a GPU, because PME GPU does not support interpolation orders other than 4.”

Is there a way to solve this problem? or should I have to switch PME to CPU and in this case, I won’t be able to use the 4 GPUs that I have because I would have to switch to 1 GPU?
and is this problem solved in newer versions?

Thanks in advance,
Ahmed

Currently the GPU PME code only supports order 4. If you want a different order, pme needs to run on the CPU. But you can use as many GPUs as you want for the other parts of the calculation.

Note that PME on CPU only has full optimization for orders 4 and 5.

1 Like