Activate AMD OpenCL build in release matrix
authorMark Abraham <mark.j.abraham@gmail.com>
Wed, 16 Sep 2020 15:41:05 +0000 (15:41 +0000)
committerPaul Bauer <paul.bauer.q@gmail.com>
Wed, 16 Sep 2020 15:41:05 +0000 (15:41 +0000)
This had never been turned on.

Fixed missing file for OpenCL installation.

Also reordered the install list in alphabetical order, per style.

Refs #3272

admin/containers/buildall.sh
admin/containers/scripted_gmx_docker_builds.py
admin/gitlab-ci/gromacs.gitlab-ci.yml

index 13ba71aa2c222354ae84ea53cede9e660c7f0977..1cbea0cad9fd61ca50604232f24650afbb6957c8 100644 (file)
@@ -16,7 +16,7 @@ python3 $SCRIPT --cmake 3.15.7 --gcc 8 --cuda 11.0 --opencl --clfft --mpi openmp
 
 tag="gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi-master"
 tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --gcc 7 --opencl amd --clfft --mpi openmpi | docker build -t $tag -
+python3 $SCRIPT --cmake 3.13.0 --gcc 7 --opencl amd --clfft --mpi openmpi --ubuntu 18.04 | docker build -t $tag -
 
 tag="gromacs/cmake-3.13.0-llvm-8-tsan-master"
 tags[${#tags[@]}]=$tag
@@ -40,7 +40,7 @@ python3 $SCRIPT --cmake 3.13.0 --llvm 9 --opencl intel --mpi openmpi | docker bu
 
 tag="gromacs/cmake-3.13.0-llvm-9-amdopencl-openmpi-master"
 tags[${#tags[@]}]=$tag
-python3 $SCRIPT --cmake 3.13.0 --llvm 9 --opencl amd --mpi openmpi | docker build -t $tag -
+python3 $SCRIPT --cmake 3.13.0 --llvm 9 --opencl amd --mpi openmpi --ubuntu 18.04 | docker build -t $tag -
 
 tag="gromacs/cmake-3.17.2-oneapi-2021.1-beta08-master"
 tags[${#tags[@]}]=$tag
index 13ef766e87b845697e0097c5885de179c2e05c7c..82738e4231a7ee6563338a89f61076d469070482 100644 (file)
@@ -268,7 +268,7 @@ def get_opencl(args):
             return hpccm.building_blocks.packages(
                     apt_keys=['http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key'],
                     apt_repositories=['deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main'],
-                    ospackages=['ocl-icd-libopencl1', 'ocl-icd-opencl-dev', 'opencl-headers', 'libelf1', 'rocm-opencl'])
+                    ospackages=['ocl-icd-libopencl1', 'ocl-icd-opencl-dev', 'opencl-headers', 'libelf1', 'rocm-opencl', 'rocm-dev', 'clinfo'])
     else:
         return None
 
index 65b9bec66b08361dfb0e8120d2bd0defb0bc9c12..f2afb2d0939c74f1ce481bf292405d7561d5d830 100644 (file)
@@ -338,10 +338,12 @@ gromacs:gcc-7:release:configure:
   extends:
     - .gromacs:base:release:configure
     - .use-gcc:base
+    - .use-opencl
     - .rules:nightly-only-for-release
   image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi-master
   variables:
     COMPILER_MAJOR_VERSION: 7
+    CMAKE_EXTRA_OPTIONS: "-DGMX_EXTERNAL_CLFFT=ON"
     RELEASE_BUILD_DIR: release-builds-gcc
     CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
   dependencies:
@@ -696,6 +698,7 @@ gromacs:gcc-7:test:
   variables:
     KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
     KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
+    LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
   tags:
     - k8s-scilifelab
   needs:
@@ -788,6 +791,7 @@ gromacs:gcc-7:regressiontest:
     REGRESSIONTEST_PME_RANK_NUMBER: 0
     REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
     REGRESSIONTEST_OMP_RANK_NUMBER: 1
+    LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
   tags:
     - k8s-scilifelab
   needs:
@@ -897,6 +901,11 @@ gromacs:gcc-7:release:test:
   image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi-master
   variables:
     BUILD_DIR: release-builds-gcc
+    KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
+    KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
+    LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
+  tags:
+    - k8s-scilifelab
   needs:
     - job: gromacs:gcc-7:release:configure
     - job: gromacs:gcc-7:release:build
@@ -954,6 +963,9 @@ gromacs:gcc-7:release:regressiontest:
   image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi-master
   variables:
     BUILD_DIR: release-builds-gcc
+    KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
+    KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
+    LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
   tags:
     - k8s-scilifelab
   needs: