Increased the default reset step to 1500 in gmx tune_pme
authorCarsten Kutzner <ckutzne@gwdg.de>
Tue, 27 Sep 2016 09:31:39 +0000 (11:31 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Wed, 16 Nov 2016 16:59:06 +0000 (17:59 +0100)
Commit 785aad1a introduced a gmx_fatal() in mdrun for cases where
cycle counters are reset when PME tuning is still active. In
almost all cases, tuning takes longer than 100 steps (which was
the default at which gmx tune_pme would request mdrun to reset its
counters). This leads to gmx tune_pme reporting that all the
runs failed. Note that the small default of 100 steps was from times
where there was only DLB to account for, but not PME tuning.

With the increased default, this should happen only very rarely.

For future versions it would be nicer to implement a "-benchmarksteps"
command line parameter for mdrun which resets counters exactly after
PME tuning is finished and then performs a requested number of
benchmark MD steps. Refs #1781

Change-Id: Icbcce1ecc8a23d35302c04c9a6be13c06b1be8c8

src/gromacs/gmxana/gmx_tune_pme.c

index cfb6927ce93ec241f96ace209ade515492cdfab5..fd7ad486ffd67d7c503f6be1c8620d29d541301f 100644 (file)
@@ -2214,9 +2214,9 @@ int gmx_tune_pme(int argc, char *argv[])
     real            rcoulomb       = -1.0;            /* Coulomb radius as set in .tpr file */
     gmx_bool        bScaleRvdw     = TRUE;
     gmx_int64_t     bench_nsteps   = BENCHSTEPS;
-    gmx_int64_t     new_sim_nsteps = -1;  /* -1 indicates: not set by the user */
-    gmx_int64_t     cpt_steps      = 0;   /* Step counter in .cpt input file   */
-    int             presteps       = 100; /* Do a full cycle reset after presteps steps */
+    gmx_int64_t     new_sim_nsteps = -1;   /* -1 indicates: not set by the user */
+    gmx_int64_t     cpt_steps      = 0;    /* Step counter in .cpt input file   */
+    int             presteps       = 1500; /* Do a full cycle reset after presteps steps */
     gmx_bool        bOverwrite     = FALSE, bKeepTPR;
     gmx_bool        bLaunch        = FALSE;
     char           *ExtraArgs      = NULL;