PBC = xy slow performance

GROMACS version: 2024.1
GROMACS modification: No
Here post your question

Good time of the day. I’ve been running a membrane simulation using CGMartini in GROMACS and the simulation of PBC = xy is around 3 time slower than PBC = xyz with the same system.

Is there a way to improve performance?

the .mdp parameters are:

title = Martini

integrator = md
dt = 0.01
nsteps = 34000000
nstcomm = 100
comm-grps =

nstxout = 0
nstvout = 0
nstfout = 0
nstlog = 250000 ; Output frequency for energies to log file
nstenergy = 250000 ; Output frequency for energies to energy file
nstxtcout = 250000 ; Output frequency for .xtc file
xtc_precision = 100
xtc-grps = POPC POPG W ION protein
energygrps =

cutoff-scheme = Verlet
nstlist = 150
ns_type = grid
verlet-buffer-tolerance = 0.005

coulombtype = reaction-field
rcoulomb = 1.1
epsilon_r = 15 ; 2.5 (with polarizable water)
epsilon_rf = 0
vdw_type = cutoff ;(for use with Verlet-pairlist)
vdw-modifier = Potential-shift-verlet
rvdw = 1.1 ;(for use with Verlet-pairlist)

tcoupl = v-rescale
tc-grps = POPC POPG W ION protein
tau_t = 1.0 1.0 1.0 1.0 1.0
ref_t = 310 310 310 310 310

Pcoupl = no ; parrinello-rahman

gen_vel = yes
gen_temp = 310
gen_seed = -1

constraints = none
constraint_algorithm = Lincs
continuation = no
lincs_order = 4
lincs_warnangle = 30

pbc = xy
nwall = 2
wall-atomtype = W W
wall-density = 6 6
wall-r-linpot = -1

Please don’t start multiple threads with the same questions (PBC = xy slow performance).

Have you checked the MD log files? Check what you are offloading to GPU. It’s possible that some interactions can still not be run on GPU with walls. Bonded interactions should be possible since 2024.1 (Performance improvements - GROMACS 2024.1 documentation), but there might still be other things that cannot be offloaded when using walls.

Thank you for your reply. This is what I found in the log file:

Update task can not run on the GPU, because the following condition(s) were not satisfied:

Virtual sites are not supported.

From what I gather, the wall of the system is the virtual site that the log file mentions. According to the “real cycle and time accounting”, 75% of giga-cycles was spent on Force activity, which I’m guessing is the wall. Whereas with mega-flops accounting, “NxN RF Elec. + LJ [F]” accounted for 98% of flops.

Virtual sites and walls are not the same.