[gmx-users] Free-energy on GMX-2019.1 ( lower performance on GPU) (Mark Abraham)

Mark Abraham mark.j.abraham at gmail.com
Fri Mar 15 14:58:52 CET 2019


Hi,

In that case you have 122*87=10614 perturbed atoms in a 91K atom system.
The FEP code in GROMACS is not engineered to run fast anywhere near that
regime. If possible, I'd suggest you explore what you can learn with e.g.
just one drug molecule in a similar system.

Mark

On Fri, 15 Mar 2019 at 12:27 praveen kumar <praveenche at gmail.com> wrote:

> Dear Mark
>
> I have a system containing formed lipid-bilayer (Phospholipid + drug
> molecules) (~91 K atoms): There are 120 Phospholipids and 87 drug molecules
> in the system box of (8 X 8 X 12). I am trying to grow the all the drug
> molecules (87) (each drug consist of 122 atoms) from decoupled state to
> coupled state using two-stage (TI method). First decoupling the vdw and
> then ele. I have tested with both the simulations these do not run on GPU
> mostly taking CPU to run. I have checked -pme gpu -bonded  gpu  (these are
> not helping me run on GPU)
>
> Thanks
> Praveen
>
>
>
> Hi,
>
> How large is your perturbed region and your normal region? The FEP
> short-ranged kernels run on the CPU, and are not written very well for
> performance. So the larger the perturbed region, the worse things get.
> Because there's a lot of extra CPU work when running FEP, you may see
> improvements from also adding -pme gpu -bonded gpu to your mdrun
> invocation, by moving such work off the CPU.
>
> BTW lincs-order=12 is uselessly large, but is not the problem here.
>
> Mark
>
> On Fri, 15 Mar 2019 at 06:16 praveen kumar <praveenche at gmail.com> wrote:
>
> > Dear All
> >
> > I am trying to run the free-energy simulation using TI method in gromacs
> > 2019.1 in a GPU machine  (containing two Nvidia Geforce 1080 TI cards ).
> > But unfortunately, am unable to run the free-energy simulation run on
> GPU.
> >
> > The normal MD simulation (without free-energy )is able to run perfectly
> by
> > making use of GPU, which gives us excellent speed up in the simulation.
> > for example, 100 K atoms system is able to give us ~ 80 ns per day on a
> gpu
> > card.  (It uses > 80 % GPU usage)
> > When I am trying to run the free-energy simulations for the same system,
> > the performance drastically falls down to ~0.02 ns per day.  (It uses 0 %
> > GPU usage).
> >
> > I am pasting the MDP files for Normal MD simulation and Free-energy
> > simulation below.
> > npt. mdp (MD simulation)
> >
> >
> > #####################################################################
> > title        = MD simulation
> > ; Run parameters
> > integrator    = md        ; leap-frog integrator
> > nsteps        = 100000000      ; 2 * 60000000   = 200 ns
> > dt        = 0.002        ; 2 fs
> > ; Output control
> > nstxout                = 100000      ; save coordinates every 10.0 ps
> > nstvout                = 100000      ; save velocities every 10.0 ps
> > nstfout            = 100000      ; save forces every 10.0 ps
> > nstenergy            = 500        ; save energies every 10.0 ps
> > nstlog                = 5000        ; update log file every 10.0 ps
> > nstxout-compressed      = 5000          ; save compressed coordinates
> every
> > 10.0 ps, nstxout-compressed replaces nstxtcout
> > compressed-x-grps       = System        ; replaces xtc-grps
> > ; Bond parameters
> > continuation            = yes            ; Restarting after NVT
> > constraint_algorithm    = lincs            ; holonomic constraints
> > constraints            = h-bonds        ; H bonds constrained
> > lincs_iter            = 1            ; accuracy of LINCS
> > lincs_order            = 4            ; also related to accuracy
> > ; Neighborsearching
> > cutoff-scheme       = Verlet
> > ns_type            = grid        ; search neighboring grid cells
> > nstlist            = 10        ; 20 fs, largely irrelevant with Verlet
> > rcoulomb        = 1.2        ; short-range electrostatic cutoff (in nm)
> > rvdw            = 1.2        ; short-range van der Waals cutoff (in nm)
> > rvdw-switch         = 1.0
> > vdwtype         = cutoff
> > vdw-modifier        = force-switch
> > rlist             = 1.2
> > ; Electrostatics
> > coulombtype        = PME        ; Particle Mesh Ewald for long-range
> > electrostatics
> > pme_order        = 4                ; cubic interpolation
> > fourierspacing        = 0.16        ; grid spacing for FFT
> > ; Temperature coupling is on
> > tcoupl        = V-rescale                ; modified Berendsen thermostat
> > tc-grps        = system            ;     Water           ; two coupling
> > groups - more accurate
> > tau_t        = 0.1             ;    0.1          ; time constant, in ps
> > ref_t        = 360              ;    340             ; reference
> > temperature, one for each group, in K
> > ; Pressure coupling is on
> > ;pcoupl                  =no
> > pcoupl                = Parrinello-Rahman        ; Pressure coupling on
> in
> > NPT
> > pcoupltype            = isotropic                ; uniform scaling of box
> > vectors
> > tau_p                = 2.0                    ; time constant, in ps
> > ref_p                = 1.0   ;1.0                 ; reference pressure,
> in
> > bar
> > compressibility         = 4.5e-5 ; 4.5e-5            ; isothermal
> > compressibility of water, bar^-1
> > ; Periodic boundary conditions
> > pbc        = xyz        ; 3-D PBC
> > ; Dispersion correction
> > DispCorr    = no        ; account for cut-off vdW scheme
> > ; Velocity generation
> > gen_vel        = no        ; Velocity generation is off
> > ######################################################################
> > npt. mdp ( for free-energy simulation)
> >
> ##########################################################################
> >
> > ; Run control
> > integrator               = sd       ; Langevin dynamics
> > tinit                    = 0
> > dt                       = 0.002
> > nsteps                   = 50000    ; 100 ps
> > nstcomm                  = 100
> > ; Output control
> > nstxout                  = 500
> > nstvout                  = 500
> > nstfout                  = 0
> > nstlog                   = 500
> > nstenergy                = 500
> > nstxout-compressed       = 0
> > ; Neighborsearching and short-range nonbonded interactions
> > cutoff-scheme            = verlet
> > nstlist                  = 20
> > ns_type                  = grid
> > pbc                      = xyz
> > rlist                    = 1.2
> > ; Electrostatics
> > coulombtype              = PME
> > rcoulomb                 = 1.2
> > ; van der Waals
> > vdwtype                  = cutoff
> > vdw-modifier             = potential-switch
> > rvdw-switch              = 1.0
> > rvdw                     = 1.2
> > ; Apply long range dispersion corrections for Energy and Pressure
> > DispCorr                  = EnerPres
> > ; Spacing for the PME/PPPM FFT grid
> > fourierspacing           = 0.12
> > ; EWALD/PME/PPPM parameters
> > pme_order                = 6
> > ewald_rtol               = 1e-06
> > epsilon_surface          = 0
> > ; Temperature coupling
> > ; tcoupl is implicitly handled by the sd integrator
> > tc_grps                  = system
> > tau_t                    = 1.0
> > ref_t                    = 298
> > ; Pressure coupling is on for NPT
> > Pcoupl                   = berendsen
> > tau_p                    = 1.0
> > compressibility          = 4.5e-05
> > ref_p                    = 1.0
> > ; Free energy control stuff
> > free_energy              = yes
> > init_lambda_state        = 0
> > delta_lambda             = 0
> > calc_lambda_neighbors    = 1        ; only immediate neighboring windows
> > couple-moltype           = IO  ; name of moleculetype to decouple
> > couple-lambda0           = vdw     ; only van der Waals interactions
> > couple-lambda1           = vdw-q     ; turn off everything, in this case
> > only vdW
> > couple-intramol          = no
> > ; Vectors of lambda specified here
> > ; Each combination is an index that is retrieved from init_lambda_state
> for
> > each simulation
> > ; init_lambda_state        0    1    2    3    4    5    6    7    8
> > 9    10   11   12   13   14   15   16   17   18   19   20
> > vdw_lambdas              = 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40
> > 0.45 0.50 0.55 0.60 0.65 0.70 0.75 0.80 0.85 0.90 0.95 1.00
> > coul_lambdas             = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > ; We are not transforming any bonded or restrained interactions
> > bonded_lambdas           = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > restraint_lambdas        = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > ; Masses are not changing (particle identities are the same at lambda = 0
> > and lambda = 1)
> > mass_lambdas             = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > ; Not doing simulated temperting here
> > temperature_lambdas      = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
> > ; Options for the decoupling
> > sc-alpha                 = 0.5
> > sc-coul                  = no       ; linear interpolation of Coulomb
> (none
> > in this case)
> > sc-power                 = 1
> > sc-sigma                 = 0.3
> > nstdhdl                  = 10
> > ; Do not generate velocities
> > gen_vel                  = no
> > ; options for bonds
> > constraints              = h-bonds  ; we only have C-H bonds here
> > ; Type of constraint algorithm
> > constraint-algorithm     = lincs
> > ; Constrain the starting configuration
> > ; since we are continuing from NVT
> > continuation             = yes
> > ; Highest order in the expansion of the constraint coupling matrix
> > lincs-order              = 12
> >
> >
>
> ################################################################################
> >
> >  for running simulation I am using the command below.:
> >
> > "gmx  mdrun -v -s MD.tpr -deffnm MD -nb gpu  -ntomp 10 -gpu_id 0 "
> >
> > Any help in solving this issue is much appreciated
> >
> > Thanking you in Advance
> >
> > Praveen
> > --
> > Gromacs Users mailing list
> >
> > * Please search the archive at
> > http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> > posting!
> >
> > * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
> >
> > * For (un)subscribe requests visit
> > https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> > send a mail to gmx-users-request at gromacs.org.
> >
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>


More information about the gromacs.org_gmx-users mailing list