Merge branch 'origin/release-2021' into merge-2021-into-master
authorPaul Bauer <paul.bauer.q@gmail.com>
Tue, 24 Nov 2020 15:58:43 +0000 (16:58 +0100)
committerPaul Bauer <paul.bauer.q@gmail.com>
Tue, 24 Nov 2020 15:58:43 +0000 (16:58 +0100)
Resolved Conflicts:
cmake/gmxVersionInfo.cmake
docs/release-notes/index.rst
src/gromacs/mdlib/CMakeLists.txt
src/gromacs/mdrun/md.cpp

17 files changed:
1  2 
admin/gitlab-ci/archive.gitlab-ci.yml
admin/gitlab-ci/gromacs.gitlab-ci.yml
admin/gitlab-ci/lint.gitlab-ci.yml
admin/gitlab-ci/python-gmxapi.gitlab-ci.yml
admin/gitlab-ci/sample_restraint.gitlab-ci.yml
api/nblib/CMakeLists.txt
api/nblib/tests/CMakeLists.txt
cmake/gmxVersionInfo.cmake
docs/release-notes/index.rst
python_packaging/src/CMakeLists.txt
src/gromacs/hardware/detecthardware.cpp
src/gromacs/mdlib/CMakeLists.txt
src/gromacs/mdrun/md.cpp
src/gromacs/nbnxm/nbnxm_gpu_data_mgmt.cpp
src/gromacs/simd/support.cpp
src/programs/CMakeLists.txt
src/testutils/test_hardware_environment.cpp

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 6915178928e706d9447cb3784d798b93d4fc5e37,6b41402eb98eb2ad7f5b0c7f8c9bd22fc1d504f0..90a44ee75e19e7f0aaac0cf48ab06651701a9568
@@@ -8,19 -8,19 +8,19 @@@ releases of |Gromacs|. Major releases c
  functionality supported, whereas patch releases contain only fixes for
  issues identified in the corresponding major releases.
  
 -Two versions of |Gromacs| are under active maintenance, the 2021
 -series and the 2020 series. In the latter, only highly conservative
 +Two versions of |Gromacs| are under active maintenance, the 2022
 +series and the 2021 series. In the latter, only highly conservative
  fixes will be made, and only to address issues that affect scientific
  correctness. Naturally, some of those releases will be made after the
 -year 2020 ends, but we keep 2019 in the name so users understand how
 +year 2021 ends, but we keep 2021 in the name so users understand how
  up to date their version is. Such fixes will also be incorporated into
 -the 2021 release series, as appropriate. Around the time the 2022
 -release is made, the 2020 series will no longer be maintained.
 +the 2022 release series, as appropriate. Around the time the 2023
 +release is made, the 2021 series will no longer be maintained.
  
  Where issue numbers are reported in these release notes, more details
- can be found at https://gitlab.com/gromacs/gromacs/-/issues at that issue number.
+ can be found on the `issue tracker`_ at that issue number.
  
 -|Gromacs| 2021 series
 +|Gromacs| 2022 series
  ---------------------
  
  .. todolist::
@@@ -61,9 -41,6 +61,10 @@@ Major releas
     2021/major/portability
     2021/major/miscellaneous
  
++
 +Older (unmaintained) |Gromacs| series
 +-------------------------------------------------------
 +
  |Gromacs| 2020 series
  ---------------------
  
Simple merge
index a9d37b516dd0bdf40acfef30316c870f2724c7aa,949a3057972b5275f3aab35af1667cb72af66f78..f1d575bfbe2e6fdfaad97d5215e54201e3ef4666
  # To help us fund GROMACS development, we humbly ask that you cite
  # the research papers on the package. Check out http://www.gromacs.org.
  
 +add_library(mdlib INTERFACE)
 +
  file(GLOB MDLIB_SOURCES *.cpp)
+ # To avoid listing all the necessary files manually, we will remove SYCL-specfific one here:
+ list(REMOVE_ITEM MDLIB_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/leapfrog_gpu_sycl.cpp)
  
  set(MDLIB_SOURCES ${MDLIB_SOURCES} PARENT_SCOPE)
 -if (BUILD_TESTING)
 -    add_subdirectory(tests)
 -endif()
  if(GMX_GPU_CUDA)
      gmx_add_libgromacs_sources(
         leapfrog_gpu.cu
         gpuforcereduction_impl.cu
         )
  endif()
 +
+ if(GMX_GPU_SYCL)
+     gmx_add_libgromacs_sources(
+         leapfrog_gpu_sycl.cpp
+     )
+     _gmx_add_files_to_property(SYCL_SOURCES
+         leapfrog_gpu_sycl.cpp
+     )
+ endif()
++
 +# Source files have the following private module dependencies.
 +target_link_libraries(mdlib PRIVATE
 +#                      gmxlib
 +#                      math
 +#                      mdtypes
 +#                      tng_io
 +                      )
 +
 +# Public interface for modules, including dependencies and interfaces
 +#target_include_directories(mdlib PUBLIC
 +target_include_directories(mdlib INTERFACE
 +                           $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>)
 +#target_link_libraries(mdlib PUBLIC
 +target_link_libraries(mdlib INTERFACE
 +                      legacy_api
 +                      )
 +
 +# TODO: when mdlib is an OBJECT target
 +#target_link_libraries(mdlib PUBLIC legacy_api)
 +#target_link_libraries(mdlib PRIVATE common)
 +
 +# Module dependencies
 +# mdlib interfaces convey transitive dependence on these modules.
 +#target_link_libraries(mdlib PUBLIC
 +target_link_libraries(mdlib INTERFACE
 +                      utility
 +                      )
 +# Source files have the following private module dependencies.
 +#target_link_libraries(mdlib PRIVATE tng_io)
 +# TODO: Explicitly link specific modules.
 +#target_link_libraries(mdlib PRIVATE legacy_modules)
 +
 +if (BUILD_TESTING)
 +    add_subdirectory(tests)
 +endif()
Simple merge
index 08b35450d32939d50879399cd4b077e5906049d7,0c3586f7d68e510a7d4611e7820a8a8399470095..e98651f1adab6611e932cb430d0c9bd52c08911d
@@@ -151,9 -153,9 +153,9 @@@ enum ElecType nbnxn_gpu_pick_ewald_kern
  
      /* Use twin cut-off kernels if requested by bTwinCut or the env. var.
         forces it (use it for debugging/benchmarking only). */
-     if (!bTwinCut && ((getenv("GMX_GPU_NB_EWALD_TWINCUT") == nullptr) || forceTwinCutoffEwaldLegacy))
+     if (!bTwinCut && !forceTwinCutoffEwald)
      {
 -        kernel_type = bUseAnalyticalEwald ? eelTypeEWALD_ANA : eelTypeEWALD_TAB;
 +        return bUseAnalyticalEwald ? ElecType::EwaldAna : ElecType::EwaldTab;
      }
      else
      {
Simple merge
Simple merge