Page 1 of 1

Benchmarks/informed guesses for OpenMM GPU speed on a 200K atom system?

Posted: Wed Apr 19, 2017 4:26 pm
by mrshirts
I'm interested to know if there are any benchmarks / examples of OpenMM GPU speed on a 200K atom system, explicit solvent, PME, 2 fs step. I didn't see any on the web page, but thought people might know some examples.

Re: Benchmarks/informed guesses for OpenMM GPU speed on a 200K atom system?

Posted: Wed Apr 19, 2017 4:34 pm
by peastman
I don't have any, but it would be easy enough to run some if you want to try. Just take the benchmark.py script and modify it to load a different PDB file.

Re: Benchmarks/informed guesses for OpenMM GPU speed on a 200K atom system?

Posted: Wed Apr 19, 2017 4:39 pm
by mrshirts
Which I plan on doing eventually, but doesn't help when I still need to find a GPU equivalent to Amazon AWS (or get set up there) and get everything set up there rather than my laptop, and could use an estimate tonight :)

Re: Benchmarks/informed guesses for OpenMM GPU speed on a 200K atom system?

Posted: Thu Aug 31, 2017 1:15 pm
by asghar
Looks like it is possible to get up to 10 ns/day for a system with 260,000 atoms. Here are the parameters (that I borrowed from charmm-gui output):

Code: Select all

nstep       = 50000                             # Number of steps to run
dt          = 0.002                             # Time-step (ps)

nstout      = 1000                              # Writing output frequency (steps)
nstdcd      = 5000                              # Writing coordinates trajectory frequency (steps)

coulomb     = PME                               # Electrostatic cut-off method
ewaldTol    = 0.0005                            # Ewald error tolerance
vdw         = Force-switch                      # vdW cut-off method
r_on        = 1.0                               # Switch-on distance (nm)
r_off       = 1.2                               # Switch-off distance (nm)

temp        = 303.15                            # Temperature (K)
fric_coeff  = 1                                 # Friction coefficient for Langevin dynamics

pcouple     = yes                               # Turn on/off pressure coupling
p_ref       = 1.0                               # Pressure (Pref or Pxx, Pyy, Pzz; bar)
p_type      = membrane                          # MonteCarloBarostat type
p_XYMode    = XYIsotropic                       # For MonteCarloMembraneBarostat
p_ZMode     = ZFree                             # For MonteCarloMembraneBarostat
p_tens      = 0.0                               # Sulface tension for MonteCarloMembraneBarostat (dyne/cm)
p_freq      = 100                               # Pressure coupling frequency (steps)

cons        = HBonds                            # Constraints mehtod

rest        = no                                # Turn on/off restraints

Here is the performance:
MD run: 50000 steps
#"Progress (%)" "Step" "Time (ps)" "Potential Energy (kJ/mole)" "Temperature (K)" "Speed (ns/day)" "Time Remaining"
2.0% 1000 2.0 -2022112.32469 264.966773569 0 --
4.0% 2000 4.0 -1922641.32911 295.345899843 10.2 13:30
6.0% 3000 6.0 -1908299.22171 303.385865907 10.2 13:18
8.0% 4000 8.0 -1912517.73641 303.87113862 10.1 13:06
10.0% 5000 10.0 -1923496.4644 303.880052742 9.8 13:13
12.0% 6000 12.0 -1931171.85853 303.596308376 9.82 12:54
14.0% 7000 14.0 -1933129.23143 303.503478289 9.84 12:35
16.0% 8000 16.0 -1935013.38564 303.534991664 9.85 12:17
18.0% 9000 18.0 -1944803.11667 304.379484199 9.85 11:59
20.0% 10000 20.0 -1944861.34667 303.551648679 9.72 11:50
22.0% 11000 22.0 -1946063.46646 303.945738035 9.73 11:32
24.0% 12000 24.0 -1949363.63679 303.999978947 9.74 11:14
26.0% 13000 26.0 -1950072.81168 303.50764845 9.75 10:56
28.0% 14000 28.0 -1952130.67415 302.715862204 9.75 10:38
30.0% 15000 30.0 -1952904.99864 303.818381212 9.68 10:25
32.0% 16000 32.0 -1954247.2381 302.856763733 9.68 10:06
34.0% 17000 34.0 -1952312.23088 303.164466062 9.69 9:48
36.0% 18000 36.0 -1954805.54298 303.305657004 9.7 9:30
38.0% 19000 38.0 -1959717.90003 303.92206727 9.7 9:12
40.0% 20000 40.0 -1958389.15427 303.705523513 9.65 8:57
42.0% 21000 42.0 -1958516.3442 303.378552676 9.65 8:39
44.0% 22000 44.0 -1956783.50526 302.972270356 9.66 8:20
46.0% 23000 46.0 -1957836.09116 303.242224715 9.66 8:02

The GPU model: Tesla P100-PCIE-12GB

Any idea how to change the input parameters to make hydrogens heavy for using 5 fs timestep?

Re: Benchmarks/informed guesses for OpenMM GPU speed on a 200K atom system?

Posted: Thu Aug 31, 2017 4:18 pm
by peastman
If you're using benchmark.py, you can just specify --heavy-hydrogens as a command line argument. Otherwise, you should make two changes when you call createSystem(): set hydrogenMass=4*amu, and constraints=AllBonds.