Fix incorrect LJ cut-off with GPU + PME tuning
authorSzilard Pall <pszilard@cbr.su.se>
Fri, 26 Sep 2014 09:53:35 +0000 (11:53 +0200)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Tue, 30 Sep 2014 18:49:07 +0000 (20:49 +0200)
Due to the mismatch of the macro used in generating and implementing the
twin cut-off CUDA kernels (used with PP-PME load balancing), the VdW
cut-off check was not generated and the (larger) electrostatics cut-off
was enforced instead, causing incorrect results with PME tuning.

Fixes #1603

Change-Id: I43ae19968b30843cfe407e927a5cf0bd35c62881

src/gromacs/mdlib/nbnxn_cuda/nbnxn_cuda_kernels.cuh

index 897b956a74c63ec8a76948a911a6ff7ee5124863..3bdb17f8feaf51b33c790c09f252a5243a8d0578 100644 (file)
 /* Analytical Ewald interaction kernels with twin-range cut-off
  */
 #define EL_EWALD_ANA
-#define LJ_CUTOFF_CHECK
+#define VDW_CUTOFF_CHECK
 
 /* cut-off + V shift LJ */
 #define NB_KERNEL_FUNC_NAME(x, ...) x ## _ElecEwTwinCut_VdwLJ ## __VA_ARGS__
 #undef NB_KERNEL_FUNC_NAME
 
 #undef EL_EWALD_ANA
-#undef LJ_CUTOFF_CHECK
+#undef VDW_CUTOFF_CHECK
 
 
 /* Tabulated Ewald interaction kernels */
 
 /* Tabulated Ewald interaction kernels with twin-range cut-off */
 #define EL_EWALD_TAB
-#define LJ_CUTOFF_CHECK
+#define VDW_CUTOFF_CHECK
 
 /* cut-off + V shift LJ */
 #define NB_KERNEL_FUNC_NAME(x, ...) x ## _ElecEwQSTabTwinCut_VdwLJ ## __VA_ARGS__
 #undef NB_KERNEL_FUNC_NAME
 
 #undef EL_EWALD_TAB
-#undef LJ_CUTOFF_CHECK
+#undef VDW_CUTOFF_CHECK