Merge branch 'release-2020' into master
authorPaul Bauer <paul.bauer.q@gmail.com>
Mon, 31 Aug 2020 15:15:45 +0000 (17:15 +0200)
committerPaul Bauer <paul.bauer.q@gmail.com>
Mon, 31 Aug 2020 15:15:45 +0000 (17:15 +0200)
Resolved Conflicts:
CMakeLists.txt
admin/ci-scripts/build-and-test-py-gmxapi-0.1.sh
admin/ci-scripts/build-and-test-sample_restraint-2020.sh
admin/clang-tidy.sh
admin/gitlab-ci/global.gitlab-ci.yml
admin/gitlab-ci/gromacs.gitlab-ci.yml
admin/gitlab-ci/python-gmxapi.gitlab-ci.yml
cmake/gmxManageGPU.cmake
cmake/gmxManageNvccConfig.cmake
cmake/gmxVersionInfo.cmake
share/CMakeLists.txt
src/config.h.cmakein
src/gromacs/CMakeLists.txt
src/gromacs/analysisdata/CMakeLists.txt
src/gromacs/ewald/pme.cpp
src/gromacs/fileio/tpxio.cpp
src/gromacs/fileio/writeps.cpp
src/gromacs/gmxana/gmx_hbond.cpp
src/gromacs/gmxana/gmx_lie.cpp
src/gromacs/gmxana/gmx_xpm2ps.cpp
src/gromacs/gmxpreprocess/genrestr.cpp
src/gromacs/gmxpreprocess/tests/CMakeLists.txt
src/gromacs/gpu_utils/gpu_utils.cu
src/gromacs/gpu_utils/tests/pinnedmemorychecker.cpp
src/gromacs/math/CMakeLists.txt
src/gromacs/options/CMakeLists.txt
src/gromacs/pbcutil/CMakeLists.txt
src/gromacs/topology/mtop_util.cpp
src/gromacs/trajectoryanalysis/CMakeLists.txt
src/gromacs/utility/CMakeLists.txt

Change-Id: I9c364fc3a8e1d9ba9821e06155136ffc6f46b8cd

25 files changed:
1  2 
CMakeLists.txt
admin/clang-tidy.sh
docs/CMakeLists.txt
docs/release-notes/2020/major/performance.rst
docs/release-notes/index.rst
share/CMakeLists.txt
src/config.h.cmakein
src/gromacs/CMakeLists.txt
src/gromacs/analysisdata/CMakeLists.txt
src/gromacs/ewald/pme.cpp
src/gromacs/fileio/CMakeLists.txt
src/gromacs/fileio/writeps.cpp
src/gromacs/gmxana/gmx_do_dssp.cpp
src/gromacs/gmxana/gmx_hbond.cpp
src/gromacs/gmxana/gmx_lie.cpp
src/gromacs/gmxana/gmx_xpm2ps.cpp
src/gromacs/gmxpreprocess/genrestr.cpp
src/gromacs/gmxpreprocess/tests/CMakeLists.txt
src/gromacs/gromacs-config.cmake.cmakein
src/gromacs/math/CMakeLists.txt
src/gromacs/options/CMakeLists.txt
src/gromacs/selection/CMakeLists.txt
src/gromacs/taskassignment/decidegpuusage.cpp
src/gromacs/trajectoryanalysis/CMakeLists.txt
src/gromacs/utility/CMakeLists.txt

diff --cc CMakeLists.txt
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 403ea96095cd975f6ef1a666e28980394079ba03,a30d67b3a2e63ef58fb8e62ac624d66daaa91787..912216964c66a664b8de8c460a5629e43cb3aa2f
@@@ -550,21 -561,20 +550,21 @@@ static int div_round_up(int enumerator
      return (enumerator + denominator - 1) / denominator;
  }
  
 -gmx_pme_t* gmx_pme_init(const t_commrec*         cr,
 -                        const NumPmeDomains&     numPmeDomains,
 -                        const t_inputrec*        ir,
 -                        gmx_bool                 bFreeEnergy_q,
 -                        gmx_bool                 bFreeEnergy_lj,
 -                        gmx_bool                 bReproducible,
 -                        real                     ewaldcoeff_q,
 -                        real                     ewaldcoeff_lj,
 -                        int                      nthread,
 -                        PmeRunMode               runMode,
 -                        PmeGpu*                  pmeGpu,
 -                        const gmx_device_info_t* gpuInfo,
 -                        PmeGpuProgramHandle      pmeGpuProgram,
 -                        const gmx::MDLogger&     mdlog)
 +gmx_pme_t* gmx_pme_init(const t_commrec*     cr,
 +                        const NumPmeDomains& numPmeDomains,
 +                        const t_inputrec*    ir,
 +                        gmx_bool             bFreeEnergy_q,
 +                        gmx_bool             bFreeEnergy_lj,
 +                        gmx_bool             bReproducible,
 +                        real                 ewaldcoeff_q,
 +                        real                 ewaldcoeff_lj,
 +                        int                  nthread,
 +                        PmeRunMode           runMode,
 +                        PmeGpu*              pmeGpu,
 +                        const DeviceContext* deviceContext,
 +                        const DeviceStream*  deviceStream,
 +                        const PmeGpuProgram* pmeGpuProgram,
-                         const gmx::MDLogger& /*mdlog*/)
++                        const gmx::MDLogger& mdlog)
  {
      int  use_threads, sum_use_threads, i;
      ivec ndata;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 979cdb166f8dc9ba2bf93fde117c417315c06ebb,3be1db55286c2dbe4e91d227b518b3d3b0620c54..5398c140a3fef4406f59c50f68f76232819ef04f
  # To help us fund GROMACS development, we humbly ask that you cite
  # the research papers on the package. Check out http://www.gromacs.org.
  
 -gmx_add_unit_test(GmxPreprocessTests gmxpreprocess-test
 -    editconf.cpp
 -    genconf.cpp
 -    genion.cpp
 -    genrestr.cpp
 -    gpp_atomtype.cpp
 -    gpp_bond_atomtype.cpp
 -    insert_molecules.cpp
 -    readir.cpp
 -    solvate.cpp
 -    topdirs.cpp
 -    )
 +gmx_add_gtest_executable(gmxpreprocess-test
 +    CPP_SOURCE_FILES
 +        editconf.cpp
 +        genconf.cpp
 +        genion.cpp
++        genrestr.cpp
 +        gpp_atomtype.cpp
 +        gpp_bond_atomtype.cpp
 +        insert_molecules.cpp
 +        readir.cpp
 +        solvate.cpp
 +        topdirs.cpp
 +        )
 +gmx_register_gtest_test(GmxPreprocessTests gmxpreprocess-test SLOW_TEST)
  
  # Currently these can be slow to run in Jenkins, so they are in
  # several test binaries.
index cb7879d510eea7363085e9de8240a44ecac3b4c6,7ea1facd85902c3710f1074398a73ea099b8200f..df67591a02ddbf75facb9ca5fe9dfd607415e5cf
@@@ -57,15 -57,15 +57,19 @@@ endif(
  include(${_gmx_import_file})
  unset(_gmx_import_file)
  
 -get_target_property(_libs libgromacs INTERFACE_LINK_LIBRARIES)
 +get_target_property(_libs Gromacs::libgromacs INTERFACE_LINK_LIBRARIES)
  if (_libs MATCHES "tng_io::tng_io")
      include(CMakeFindDependencyMacro)
 -    find_dependency(TNG_IO)
 +    find_dependency(TNG_IO REQUIRED)
 +endif()
 +if (_libs MATCHES "OpenMP::OpenMP_CXX")
 +    include(CMakeFindDependencyMacro)
 +    find_dependency(OpenMP REQUIRED)
  endif()
+ if (_libs MATCHES "OpenMP::OpenMP_CXX")
+     include(CMakeFindDependencyMacro)
+     find_dependency(OpenMP REQUIRED)
+ endif()
  unset(_libs)
  
  set(GROMACS_INCLUDE_DIRS)
index e0c2fadac8b37adae2ef3a9d7b256aa7395297be,b36ef2f7d3d81fd4cda2ded46bc978f7ad5af520..16d6ccd7408227be68d04e515f169c1a4d290314
  file(GLOB MATH_SOURCES *.cpp)
  set(LIBGROMACS_SOURCES ${LIBGROMACS_SOURCES} ${MATH_SOURCES} PARENT_SCOPE)
  
 -# TODO: (https://redmine.gromacs.org/issues/988) Find a new convention for defining public API.
 +# TODO: (https://gitlab.com/gromacs/gromacs/-/issues/988) Find a new convention for defining public API.
  install(FILES
+       do_fit.h
+       functions.h
+       units.h
+       utilities.h
+       vec.h
          vectypes.h
          DESTINATION include/gromacs/math)
  
Simple merge
Simple merge
index f2ae54cc0825b55e0f21d281b67433ce75320ec6,e9f98298b824f1e28e4722dd0d6dc74f709f7a97..38d61a672061d45df5c0342deaae2f6cb796e7c0
@@@ -667,12 -669,12 +667,12 @@@ bool decideWhetherToUseGpuForUpdate(con
      // does not support it, the actual CUDA LINCS code does support it
      if (gmx_mtop_ftype_count(mtop, F_CONSTRNC) > 0)
      {
-         errorMessage += "Non-connecting constraints are not supported";
+         errorMessage += "Non-connecting constraints are not supported\n";
      }
 -    if (!UpdateConstrainCuda::isNumCoupledConstraintsSupported(mtop))
 +    if (!UpdateConstrainGpu::isNumCoupledConstraintsSupported(mtop))
      {
          errorMessage +=
 -                "The number of coupled constraints is higher than supported in the CUDA LINCS "
 +                "The number of coupled constraints is higher than supported in the GPU LINCS "
                  "code.\n";
      }
  
index 7e3f5cfc2b061729d770b40108c6ff5f5145b81c,739dfaed6605985020e9f380c66374f89e1f6b19..93e82808cde05fa4fe50da929ba1f9a2f8eb29b3
@@@ -51,10 -50,13 +51,14 @@@ if(GMX_INSTALL_LEGACY_API
    install(FILES
            arrayref.h
            baseversion.h
 -        classhelpers.h
 +          classhelpers.h
            enumerationhelpers.h
 -        exceptions.h
 +          exceptions.h
 +          listoflists.h
+         fileptr.h
+         futil.h
+         flags.h
+         pleasecite.h
            programcontext.h
            range.h
            smalloc.h