Merge branch release-2016
authorRoland Schulz <roland.schulz@intel.com>
Tue, 27 Jun 2017 22:46:13 +0000 (15:46 -0700)
committerRoland Schulz <roland.schulz@intel.com>
Tue, 27 Jun 2017 22:46:26 +0000 (15:46 -0700)
Conflicts:
admin/builds/pre-submit-matrix.txt

Checked that intent of test configs is implemented appropriately in
new context. The cuda-8 config newly introduced in release-2016
is already covered in this branch, so we don't need to have that
new configuration here.

src/gromacs/gpu_utils/gpu_utils.cu
src/gromacs/simd/impl_ibm_qpx/impl_ibm_qpx_simd4_double.h
src/gromacs/domdec/domdec.cpp

Trivial

Change-Id: I9b06bb476f5b62c9652c0e5186340ed11b0c31cc

13 files changed:
1  2 
admin/builds/pre-submit-matrix.txt
cmake/gmxManageNvccConfig.cmake
docs/CMakeLists.txt
docs/dev-manual/build-system.rst
docs/dev-manual/language-features.rst
docs/install-guide/index.rst
src/gromacs/domdec/domdec.cpp
src/gromacs/gmxana/gmx_make_edi.cpp
src/gromacs/gmxpreprocess/readir.cpp
src/gromacs/gpu_utils/gpu_utils.cu
src/gromacs/pulling/pull.cpp
src/gromacs/simd/impl_ibm_qpx/impl_ibm_qpx_simd4_double.h
src/programs/mdrun/md.cpp

index b99a7dc66fe4da7e108a42b207fef79cde070dbe,b935c179829cf9cf05321ac94ef4234f7d06d3bd..1dd25a6eebfa46510314a05c96a9a6e3a0f04347
@@@ -18,9 -18,9 +18,10 @@@ gcc-4.8 gpu cuda-6.5 mpi npme=1 nranks=
  
  # Test newest gcc supported by newest CUDA at time of release
  # Test thread-MPI with CUDA
- gcc-5 gpu cuda-8.0 openmp release
 -gcc-4.8 gpu cuda-7.5 openmp release
++# Test SIMD (AVX2_256) GPU code-path
++gcc-5 gpu cuda-8.0 openmp release simd=avx2_256
  
 -# Test with ThreadSanitizer
 +# Test with ThreadSanitizer (without OpenMP, because of Redmine #1850)
  # Test AVX2_256 SIMD
  # Test fftpack fallback
  gcc-4.9 tsan fftpack simd=avx2_256
index c8561f44febf6f6e004c7c838a56a0d0e54cf0b8,706343c1f8e03082f17dedc63a1624189d601092..fc974647a67f66e9ba1794b33220877630314453
@@@ -171,8 -189,16 +171,12 @@@ gmx_dependent_cache_variable(GMX_CUDA_T
  # assemble the CUDA flags
  list(APPEND GMX_CUDA_NVCC_FLAGS "${GMX_CUDA_NVCC_GENCODE_FLAGS}")
  list(APPEND GMX_CUDA_NVCC_FLAGS "-use_fast_math")
+ if (CUDA_VERSION VERSION_EQUAL "8.0")
+     # requesting sm_20 triggers deprecation messages with nvcc 8.0 which we better avoid
+     list(APPEND GMX_CUDA_NVCC_FLAGS "-Wno-deprecated-gpu-targets")
+ endif()
  
  # assemble the CUDA host compiler flags
 -# with CMake <2.8.10 the host compiler needs to be set on the nvcc command line
 -if (CMAKE_VERSION VERSION_LESS "2.8.10")
 -    list(APPEND GMX_CUDA_NVCC_FLAGS "-ccbin=${CUDA_HOST_COMPILER}")
 -endif()
  list(APPEND GMX_CUDA_NVCC_FLAGS "${CUDA_HOST_COMPILER_OPTIONS}")
  
  # The flags are set as local variables which shadow the cache variables. The cache variables
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index d430f8a609ab02040c1c8a182c333b5738fc083f,b77a7fcacf8d2357d3b7d1fd132f4408a7644692..a944b712ebe1d87e583d07cc31ce232526c1caae
@@@ -1325,9 -1325,10 +1325,10 @@@ static void do_constraint(struct pull_
              continue;
          }
  
-         pcrd->f_scal = dr_tot[c]/((pull->group[pcrd->params.group[0]].invtm + pull->group[pcrd->params.group[1]].invtm)*dt*dt);
+         /* Accumulate the forces, in case we have multiple constraint steps */
+         pcrd->f_scal += dr_tot[c]/((pull->group[pcrd->params.group[0]].invtm + pull->group[pcrd->params.group[1]].invtm)*dt*dt);
  
 -        if (vir != NULL && pcrd->params.eGeom != epullgDIRPBC && bMaster)
 +        if (vir != nullptr && pcrd->params.eGeom != epullgDIRPBC && bMaster)
          {
              double f_invr;
  
index c93403685207532e12a47eeb0be02ae9696090ab,9223492f29b385a9f3abb2600c0c49d60408e20b..e3e146bfb00a68d951474f2bdeed7909d25b4187
@@@ -1,7 -1,7 +1,7 @@@
  /*
   * This file is part of the GROMACS molecular simulation package.
   *
-  * Copyright (c) 2014,2015,2016, by the GROMACS development team, led by
 - * Copyright (c) 2014,2015,2017, by the GROMACS development team, led by
++ * Copyright (c) 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.
Simple merge