Fix unused SIMD PME table kernel
authorBerk Hess <hess@kth.se>
Wed, 22 Mar 2017 18:16:31 +0000 (19:16 +0100)
committerMark Abraham <mark.j.abraham@gmail.com>
Wed, 19 Apr 2017 13:17:41 +0000 (15:17 +0200)
The nbnxn 2xNN PME kernel with tabulated correction had incorrect
forces by a factor 1 to 2. This kernel flavor could only be selected
manually by setting an environment variable.

Change-Id: I9a0ab8b155000ed43abbea3a9a7a58f692a884ec

src/gromacs/mdlib/nbnxn_kernels/simd_2xnn/nbnxn_kernel_simd_2xnn_inner.h

index 6d3c057d4088750375b883b6f479260cecf1c7d9..ac30b0b0ef516c909f1ca107cdaada3820154334 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * This file is part of the GROMACS molecular simulation package.
  *
- * Copyright (c) 2012,2013,2014,2015,2016, by the GROMACS development team, led by
+ * Copyright (c) 2012,2013,2014,2015,2016,2017, by the GROMACS development team, led by
  * Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
  * and including many others, as listed in the AUTHORS file in the
  * top-level source directory and at http://www.gromacs.org.
     gatherLoadUBySimdIntTranspose<1>(tab_coul_V, ti_S0, &ctabv_S0, &dum_S0);
     gatherLoadUBySimdIntTranspose<1>(tab_coul_F, ti_S2, &ctab0_S2, &ctab1_S2);
     gatherLoadUBySimdIntTranspose<1>(tab_coul_V, ti_S2, &ctabv_S2, &dum_S2);
+    ctab1_S0 = ctab1_S0 - ctab0_S0;
+    ctab1_S2 = ctab1_S2 - ctab0_S2;
 #endif
 #endif
     fsub_S0     = fma(frac_S0, ctab1_S0, ctab0_S0);