Project

General

Profile

Feature #3117

Feature #2054: PME on GPU

Coulomb FEP PME on GPU

Added by Magnus Lundborg 6 months ago. Updated about 1 month ago.

Status:
New
Priority:
Normal
Category:
mdrun
Difficulty:
hard
Close

Description

Offload Coulomb free energy perturbations to the GPU.

History

#1 Updated by Magnus Lundborg 6 months ago

This is just a quick performance test of the (still private) patch on Gerrit (13382).

Test system (decoupling testosterone in a lipid system), 1000 steps (average of 3 runs).
Before patch:
Unperturbed: 47.5 ns/day
Q decoupling: 35.6 ns/day
LJ decoupling: 41.0 ns/day
After patch:
Unperturbed: 47.3 ns/day
Q decoupling: 40.4 ns/day
LJ decoupling: 40.1 ns/day

To verify that the LJ is not negatively affected, running 5000 steps (average of 3 runs):
Before patch:
LJ decoupling: 41.6 ns/day
After patch:
LJ decoupling: 41.6 ns/day

#2 Updated by Magnus Lundborg 4 months ago

  • Target version changed from future to 2021-infrastructure-stable

#3 Updated by Joe Jordan about 1 month ago

I have not tested it myself, but Pascal mentioned when he came in January that he has a nice bench-marking suite. It looks nice and could give a more fine-grained analysis of performance hits.

https://github.com/ptmerz/gmxbenchmark

#4 Updated by Magnus Lundborg about 1 month ago

  • Difficulty hard added
  • Difficulty deleted (uncategorized)

That could of course be good, but since it doesn't run FEP (as far as I could see from a quick read) it will need some modifications to evaluate this feature. But I guess it's good to keep that suite in mind for future benchmarks.

#5 Updated by Szilárd Páll about 1 month ago

Magnus Lundborg wrote:

This is just a quick performance test of the (still private) patch on Gerrit (13382).

Test system (decoupling testosterone in a lipid system), 1000 steps (average of 3 runs).
Before patch:
Unperturbed: 47.5 ns/day
Q decoupling: 35.6 ns/day
LJ decoupling: 41.0 ns/day
After patch:
Unperturbed: 47.3 ns/day
Q decoupling: 40.4 ns/day
LJ decoupling: 40.1 ns/day

To verify that the LJ is not negatively affected, running 5000 steps (average of 3 runs):
Before patch:
LJ decoupling: 41.6 ns/day
After patch:
LJ decoupling: 41.6 ns/day

The "unperturbed" case should not be affected either -- I assume the original measurements were just noisy?

#6 Updated by Magnus Lundborg about 1 month ago

Yes, with an average over 3 runs (1000 steps) I think 47.3 ns/day vs 47.5 ns/day is just noise.

Also available in: Atom PDF