1 GROMACS 2016.1 Release Notes
2 ----------------------------------------
4 This version was released on October 28, 2016. These release notes
5 document the changes that have taken place in GROMACS since the
6 initial version 2016 to fix known issues. It also incorporates all
7 fixes made in version 5.1.4.
9 Made distance restraints work with threads and DD
10 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
11 The NMR distance restraints use several buffers for summing distances
12 that were indexed based on the index of the thread+domain local ilist
13 force atoms. This gives incorrect results with OpenMP and/or domain
14 decomposition. Using the type index for the restraint and a domain-
15 local, but not thread-local index for the pair resolves these issues.
16 The are now only two limitations left:
18 * Time-averaged restraint don't work with DD.
19 * Multiple copies of molecules in the same system without ensemble
20 averaging does not work with DD.
22 Note that these fixes have not been made in any 5.1.x release.
28 Fixed Ewald surface+3DC corrections
29 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
30 Ewald surface and 3DC correction forces were only applied up to,
31 but not including, the last atom with exclusions. With water at
32 the end of the system only the last H would not be corrected.
33 With ions at the end all ions would be missing.
34 In addition, with the Verlet scheme and domain decomposition
35 no force correction was applied at all.
39 Fixed opening of wall table files
40 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
43 Fixed bug in gmx insert-molecules.
44 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
45 With option -ip, and if all trials were unsuccessful, a molecule was
46 eventually incorrectly placed at 0/0/0 due to a memory error
47 when referencing to rpos[XX][mol].
49 Made virial reproducible
50 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
51 OpenMP reduction was used to reduce virial contributions over threads,
52 which does not have a defined order. This leads to different rounding,
53 which makes runs non-reproducible (but still fully correct).
54 Now thread local buffers are used.
55 Also removed OpenMP parallezation for small count (e.g. shift forces).
57 Updated to support FFTW 3.3.5
58 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
59 The auto-download of FFTW now gets FFTW 3.3.5 and builds it properly,
60 including with ``--enable-vsx`` when GMX_SIMD is set to VSX, i.e. for
61 Power8, and ``--enable-avx512`` when GMX_SIMD is any of the AVX flavours
62 (which is safe on non-512 now, works on KNL, and is presumed useful
63 for future AVX512 architectures).
65 Permitted automatic load balancing to disable itself when it makes the run slower
66 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
67 Under certain conditions, especially with (shared) GPUs, DLB can
68 decrease the performance. We now measure the cycles per step before
69 turning on DLB. When the running average of cycles per step with DLB
70 gets above the average without DLB, we turn off DLB. We then measure
71 again without DLB. If without DLB the cycle count is still lower,
72 we keep DLB off for the remainder of the run. Otherwise is can turn
73 on again as before. This procedure ensures that the performance will
74 never deteriorate due to DLB.
76 Improved the accuracy of timing for dynamic load balancing with GPUs
77 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
78 With OpenCL, the time for the local non-bonded to finish on the GPU
79 was ignored in the dynamic load balancing. This change lets OpenCL
80 take the same code path as CUDA.
82 One internal heuristic parameter was far too small for both CUDA and
83 OpenCL, which is now fixed.
85 Corrected kernel launch bounds for Tesla P100 GPUs
86 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
87 This corrects our initial guess of kernel tuning parameters that resulted
88 in reduced occupancy on sm_60 GPU, and thus improves performance.
90 Improved logic handling if/when the run is terminated for SETTLE warnings
91 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
92 The code now honours that when the environment variable
93 GMX_MAXCONSTRWARN is set to -1, there is no maximum number of warnings.
97 Fixed bug in gmx wham for reading pullx files.
98 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
99 Because the order of columns in the pullx files has changed recently,
100 ``gmx wham`` did not pick the reaction coordinate from ``pullx.xvg``
101 if the COM of the pull groups were written. ``gmx wham`` was tested
102 with various pull options and geometries.
104 Fixed ouput bug in gmx wham
105 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
107 Fixed deadlock with thread-MPI
108 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
109 With thread-MPI mdrun could deadlock while pinning threads.
113 Made error reporting in grompp more user friendly
114 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
115 This tool now always reports the file and line in user input files
116 that lead to a condition such that subsequent parsing cannot continue.
118 Fixed SIMD suggestion for VMX
119 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
121 Fixed script xplor2gmx.pl to work with GMXDATA
122 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
124 Fixed default nice level in mdrun-only build
125 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
126 Now an mdrun-only build should default to zero nice level, the same as
127 ``gmx mdrun`` in a normal build.
129 Fixed math-test false positive
130 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
131 Depending on the accuracy of the floating point division, the
132 input of the test function could be 1ulp too large or too small.
133 If it was too large the result of the test function wasn't
134 within 4ulp and the test failed.
136 Improved documentation
137 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
139 Approaches for reducing overhead for GPU runs are now documented.
141 The available wallcycle counters and subcounters reported in the
142 md.log files are now listed and and explained in the user guide, along
143 with how to enable reporting of the subcounters.
145 Several install-guide sections have been improved, including those for
146 OpenCL, mdrun-only, and "make check". A "quick and dirty" cluster
147 installation section was added.
149 OpenCL error string are now written, instead of cryptic error codes
150 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
152 Fixed build with GMX_USE_TNG=off
153 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
155 Removed variable-precision .gro writing
156 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
157 The precision used when writing .gro files is now fixed to 3, 4 and 5
158 decimal places for x, v and box respectively to ensure compatibility with
159 other software. Variable-precision reading is still supported.
163 Fixed BG/Q platform files and install guide
164 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
165 Renamed the platform file to reflect normal practice
166 and the install guide.
168 Reduced the memory required for free-energy simulations
169 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
170 Pair lists with atoms whose short-ranged parameters are perturbed