Skip to content

Commit

Permalink
Version 2018
Browse files Browse the repository at this point in the history
Removed "-rc1" per policy. Bumped regressiontests hash.

Updated release notes for final release, including release date, and
removing beta-phase fix content. Sorted tools page by tool name/topic.
Fixed some text to refer to changes in the past tense. Updated
some line wrapping.

Change-Id: Ia82a1cef3270dbdddd173c58248fc9bf6ea420c5
  • Loading branch information
mabraham committed Jan 11, 2018
1 parent f5cb6c1 commit 6573773
Show file tree
Hide file tree
Showing 6 changed files with 212 additions and 270 deletions.
4 changes: 2 additions & 2 deletions cmake/gmxVersionInfo.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -191,7 +191,7 @@ set(GMX_VERSION_PATCH 0)
# candidates, where it signifies the most recent such release from
# this branch; it will be empty before the first such release, as well
# as after the final release is out.
set(GMX_VERSION_SUFFIX "-rc1")
set(GMX_VERSION_SUFFIX "")

# Conventionally with libtool, any ABI change must change the major
# version number, the minor version number should change if it's just
Expand Down Expand Up @@ -226,7 +226,7 @@ endif()

set(REGRESSIONTEST_VERSION "${GMX_VERSION_STRING}")
set(REGRESSIONTEST_BRANCH "refs/heads/release-2018")
set(REGRESSIONTEST_MD5SUM "d4c535a06fd8f34c9fd21e7ee5a30808" CACHE INTERNAL "MD5 sum of the regressiontests tarball")
set(REGRESSIONTEST_MD5SUM "5a609bea6b6777072063be9e665121ef" CACHE INTERNAL "MD5 sum of the regressiontests tarball")

math(EXPR GMX_VERSION_NUMERIC
"${GMX_VERSION_MAJOR}*10000 + ${GMX_VERSION_PATCH}")
Expand Down
226 changes: 10 additions & 216 deletions docs/release-notes/bugs-fixed.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
.. TODO Remove beta-phase fixes below before final release
Bugs fixed
^^^^^^^^^^

Expand All @@ -19,25 +17,25 @@ nstpcouple steps. Note that this change prevents continuation from old
checkpoint files for Berendsen pressuring-coupling runs, since the
previous-step pressure is no longer stored.

Add missing Ewald correction for PME-User
Added missing Ewald correction for PME-User
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
With :mdp-value:`coulombtype=PME-User`, the Ewald mesh energy was not subtracted
leading to (very) incorrect Coulomb energies and forces.

Fixes :issue:`2286`

Fix incorrect dV/dlambda for walls
Fixed incorrect dV/dlambda for walls
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The free-energy derivative dV/dlambda for walls, which can
be perturbed by changing atom types of non-wall atoms, only
contained the B-state contribution.
The free-energy derivative dV/dlambda for walls, which can be
perturbed by changing atom types of non-wall atoms, only contained the
B-state contribution.

Fixes :issue:`2267`

Supported OpenMP for orientation restraints
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Previously this was broken, but has been fixed and is now tested
and supported.
Previously this was broken, but has been fixed and is now tested and
supported.

Fixed orientation restraint reference
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Expand All @@ -58,7 +56,7 @@ restraints.

Fixes :issue:`2228`

Fix Ekin at step 0 with COM removal
Fixed Ekin at step 0 with COM removal
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The kinetic energy at step 0 was computed from the velocities without
the center of mass velocity removed. This could cause a relatively
Expand Down Expand Up @@ -125,7 +123,7 @@ the intention of ``mdrun -reprod``, and is now fixed.

Refs Fixes :issue:`2318`

Now mdrun only stops at nstlist steps with mdrun -reprod
Made mdrun only stop at nstlist steps with mdrun -reprod
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Stopping mdrun with two INT or TERM signals (e.g. from Ctrl-C from the
terminal shell) would always happen right after the first global
Expand All @@ -146,8 +144,7 @@ Fixes :issue:`2322`

Removed duplicated lines from OPLS ffbonded.itp
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Identical lines have been removed, as identified
with uniq.
Identical lines have been removed, as identified with uniq.

Fixes :issue:`1678`.

Expand Down Expand Up @@ -254,206 +251,3 @@ number of ranks, but it's safer to ask the user to explicity set
always worked correctly.

Fixes :issue:`2348`

``mdrun -pme cpu -pmefft gpu`` now gives a fatal error - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Previously was silently ignored.

Fixed mdrun -nb auto -pme auto when GPUs are absent - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The logic was flawed such that GPUs were "selected" for use even
though none had been detected. That led to the GPU behaviour of
avoiding using separate PME ranks.

Also made a minor fix to the logic for emulation. The new
interpretation of ``mdrun -gpu_id`` does not need to trigger an error
when GPU IDs have been supplied along with the emulation environmnet
variable.

Fixes :issue:`2315`

Fixed ArrayRef<SimdDInt32> for SSE/AVX128 - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Fixes :issue:`2326`

Fixed PME gather in double with AVX(2)_128 - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The 4NSIMD PME gather change did not change the conditional
for grid alignment. This is made consistent here.
Note that the 4NSIMD change lowered the performance of PME gather
on AVX_128_FMA and AVX2_128 in double precision. We should consider
using 256-bit AVX for double precision instead.

Fixes :issue:`2326`

Reformulated PME and SHAKE test tolerances - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Fixes :issue:`2306`
Fixes :issue:`2337`
Fixes :issue:`2338`

Fixed freeing of GPU context - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
If a device context was not used, CUDA gives an error if we attempt to
clear it, so we must avoid clearing it.

:issue:`2322`

Fixed initial temperature reporting - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Fixes :issue:`2314`

Fixed compilation issues for AVX-512 - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
- gcc-5.4.0 incorrectly requires the second argument of
_mm512_i32gather_pd() to be a double pointer instead
of void, but this should fix compilation for both
cases.
- Work around double precision permute instruction
only available with AVX512VL instructions.

Fixes :issue:`2312`

Cleared vsite velocities for simple integrators - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The simple integrator loops did not clear
the velocities of virtual sites. This allows velocities of virtual
sites to slowly increase over time. To prevent this, velocities
of virtual sites are now cleared in a separate loop.

Fixes :issue:`2316`

Fixed fft5d pinning - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
A CUDA build on a node with no driver installed can never have
selected a CUDA pinning policy, and erroneously unpinning leads to a
fatal error. Instead, FFT5D now remembers whether it made pinning
possible, which can only occur when there was a driver and a valid
device, so that it can unpin only when appropriate.

Fixes :issue:`2322`

Avoided assertion failure in AWH - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
With an unstable reaction coordinate or unequilibrated system, AWH
could cause an assertion to fail. Now AWH checks for valid coordinate
input and throws an exception with a clear message.

Corrected AWH input file name in documentation - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Mdrun was expecting user input data file 'awhinit.xvg' while the
mdp-option documentation has 'awh-init.xvg'.

Changed the GPU SMT cut-off to quadratic - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The advantage of SMT diminishes rapidly with the number of cores.
So the system sizes should be compares to the square of the number
of cores.

Fixed AVX-512 SIMD test for C compilation - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Avoid using C++ features in the test, since it should test both the C
and C++ compilers.

Leave NVML use off by default - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Even if NVML is found, leave the default off because the
linking is unreliable for reasons that are currently unclear,
and only in some cases is linking with NVML advantageous.

Fixes :issue:`2311`

Fixes for compiler support - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Double precision, debug mode, proper release mode and some quirky
cases were all improved in multiple ways to compile and pass tests
reliably.

Consume any error produced during GPU detection - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Having reported it, we should clear the CUDA error status so that
future calls do not continue to return it.

Fixes :issue:`2321`

Replace intrinsic with inline asm for AVX512 unit test - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Using inline assembly avoids compilers at low optimization
levels not generating efficient code for the timing routines, and
also avoids needing an assembler.

Fixes :issue:`2340`

Fixed table tests and improve table construction - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Since compilers are allowed to use different FMA constructs, we
now allow the consistency check to deviate a few ulps.

For sinc and other extreme functions that oscillate, the
scan over the definition range to locate the minimum quotient
between the 1st and 4th derivative to set the table spacing
exposes some delicate errors. Basically, it is not possible
to have arbitrarily low relative errors for the derivative
for a function that has large magnitude in the same place.
For now we reduce the test interval for sinc(); this should
anyway not be relevant for normal well-behaved MD functional
forms.

Fixes :issue:`2336`.

Supported Simd4N for SimdRealWidth<4 - beta-phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
If the SIMD with is smaller 4 but Simd4N is supported
then use Simd4 for Simd4N.

Fixes :issue:`2327`

Made AVX-512 CMake detection work - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Both inline assembly and the support flag have to be set for the
timing code to be compiled.

Fixed shift usage for KNC - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
9437181eacb removed the shift operator without replacing the usage for
KNC.

Made acceleration correction VCM mode work - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
The new acceleration correction VCM mode did not actually correct
the coordinate for the acceleration, since a null pointer was passed.
Introduced an extra CGLO flag to allow for correction of the
coordinates, but leave the initial coordinates unaffected.

Fix builds on ARM & clarify (ARM) GPU support - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Fixed a typo in architecture.h that prevented
the Neon Asimd instructions from being selected,
and updated the CPU brand detection to also look
for a new label with Tegra X1 on Ubuntu 16.04

Fixes :issue:`2287`

Improved documentation and code for physical validation - beta phase fix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Adds documentation for the physical validation suite in
docs/dev-manual/physical_validation.rst

As this was misunderstandable, changed the default behavior of
`make check-phys` and `make check-all` to actually run the simulations.
This might take very long, but since the physical validation tests need to
be turned on explicitly via cmake option, the chances of somebody using the
tests by mistake are low. The `check` targets are:

* `make check`: Run unit and regression tests (unchanged)
* `make check-phys`: Run simulations needed for physical validation, then
run physical validation tests
* `make check-phys-analyze`: Only run physical validation tests, assuming
that simulations were run previously and are available.
* `make check-all`: Combination of `make check` and `make check-phys`

Additionally, `make check-phys-prepare` can be used to prepare |Gromacs|
input files and a script to run the simulations needed for the physical
validation tests.

Fixes :issue:`2349`
19 changes: 3 additions & 16 deletions docs/release-notes/index.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Release notes
=============

This version was released on TODO. These release notes document the
functionality changes in |Gromacs| |version| that have taken place in
|Gromacs| since version 2016.
This version was released on January 10, 2018. These release notes
document the functionality changes in |Gromacs| |version| that have
taken place in |Gromacs| since version 2016.

Some bug fixes are mentioned here, but those fixed in 5.1 or 2016
branches are (or will be) documented there. If the same functionality
Expand Down Expand Up @@ -45,19 +45,6 @@ There are some new features available also:
* Conserved quantities are computed and reported for more integration
schemes - now including all Berendsen and Parrinello-Rahman schemes.

.. TODO remove before final release
Beta phase
----------

During the beta phase, numerous fixes will occur, many of which will
be fixes of fixes, or fixes of new features. Those will be temporarily
documented in the release notes, but will not appear in the final 2018
release notes because they were never bugs that formally affected
users. If you want to find whether a beta-phase issue has been fixed,
you can find them by searching for the text "beta-phase fix" in the
relevant subsection.

Details
-------

Expand Down
48 changes: 44 additions & 4 deletions docs/release-notes/miscellaneous.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,14 @@ with domain decomposition. This allows for internal checks on valid
commrec, which have now been added, and would have prevented :issue:`2257`.

Added partial support for writing masses and partial charges with TNG files
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""^
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

:issue:`2188`

Updated TNG to version 1.8.1
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Added data block for atom masses.

Fixes :issue:`2187` and :issue:`2250` and other bugs and warnings.

Added load balance fraction to DLB print
Expand All @@ -43,10 +44,11 @@ The OPLS four-term dihedral function was not described in the
reference listed earlier, so this was updated. Also updated
the reference to the three term dihedral to an older paper.

Updated developer guide
Updated many aspects of the documentation
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Imported and updated more material from the wiki. Included coverage of
some recent discussion points on C++11 and preprocessor use.
Imported and updated more material from the wiki. Incorporated
suggestions arising from many Redmine issues. Updated user guide,
developer guide, install guide, and reference manual.

Updated mdrun signal help text
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Expand All @@ -55,3 +57,41 @@ to the behavior.

Fixes :issue:`2324`

Changed to handle erroneous command line args better
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Some gmx modules need to be able to accept non-option arguments, and
some should not. Introduced enough functionality to support such
behaviour, while giving useful error messages in cases where the
command line is merely missing hyphens (which can happen e.g. when
people copy-paste from inconveniently built PDF files for tutorials).
Increased test coverage of relevant cases.

Removed some useless command-line argument strings from test cases
that never needed them.

Also tested some behaviours of handling string options, and renamed
some test input strings to reflect the intent.

:issue:`2153`

Changed to no longer allow multiple energy groups for GPU runs
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Exit with a fatal error instead of only warning, since the latter
leads to writing data for energy groups that is incorrect to the
energy file.

:issue:`1822`

Removed duplications in GMXLIB search paths
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Remove entries that are duplicated, or identical to the default search
path, to avoid e.g. listing identical force fields multiple times.

:issue:`1928`

Changed to no longer write reference pull group 0 to log
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
This is an internal group used for absolute references, which cannot
be set by users, so printing it just leads to confusion.

:issue:`2143`
Loading

0 comments on commit 6573773

Please sign in to comment.