Skip to content

Commit 4ee070d

Browse files
authored
Merge branch 'devel' into hdf5_update
2 parents 4f8b299 + 300bf37 commit 4ee070d

File tree

503 files changed

+756663
-6664
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

503 files changed

+756663
-6664
lines changed

.azure-pipelines.yml

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ jobs:
8484
displayName: 'Run checks'
8585
8686
- job: compilation_default
87-
# ubuntu-latest: ubuntu-22.04 w/ GCC 11
87+
# ubuntu-latest: ubuntu-24.04 w/ GCC 13.3
8888
displayName: 'Compilation Default GCC'
8989
steps:
9090
- template: .azure-pipelines/install-template.yml
@@ -96,14 +96,14 @@ jobs:
9696
CUDA: false
9797
BUILD: true
9898

99-
- job: compilation_default_gcc9
100-
displayName: 'Compilation Default GCC 9'
99+
- job: compilation_default_gcc10
100+
displayName: 'Compilation Default GCC 10'
101101
pool:
102-
vmImage: 'ubuntu-20.04'
102+
vmImage: 'ubuntu-22.04'
103103
variables:
104-
CC: gcc-9
105-
CXX: g++-9
106-
FC: gfortran-9
104+
CC: gcc-10
105+
CXX: g++-10
106+
FC: gfortran-10
107107
steps:
108108
- template: .azure-pipelines/install-template.yml
109109
parameters:
@@ -114,14 +114,14 @@ jobs:
114114
CUDA: false
115115
BUILD: true
116116

117-
- job: compilation_default_gcc10
118-
displayName: 'Compilation Default GCC 10'
117+
- job: compilation_default_gcc11
118+
displayName: 'Compilation Default GCC 11'
119119
pool:
120-
vmImage: 'ubuntu-20.04'
120+
vmImage: 'ubuntu-22.04'
121121
variables:
122-
CC: gcc-10
123-
CXX: g++-10
124-
FC: gfortran-10
122+
CC: gcc-11
123+
CXX: g++-11
124+
FC: gfortran-11
125125
steps:
126126
- template: .azure-pipelines/install-template.yml
127127
parameters:
@@ -132,52 +132,52 @@ jobs:
132132
CUDA: false
133133
BUILD: true
134134

135-
- job: compilation_CUDA11_gcc9
136-
displayName: 'Compilation CUDA 11 GCC 9'
135+
- job: compilation_CUDA11_gcc10
136+
displayName: 'Compilation CUDA 11 GCC 10'
137137
pool:
138-
vmImage: 'ubuntu-20.04'
138+
vmImage: 'ubuntu-22.04'
139139
variables:
140-
CC: gcc-9
141-
CXX: g++-9
142-
FC: gfortran-9
140+
CC: gcc-10
141+
CXX: g++-10
142+
FC: gfortran-10
143143
steps:
144144
- template: .azure-pipelines/install-template.yml
145145
parameters:
146146
CUDA: true
147-
CUDA_V: '11.4'
147+
CUDA_V: '11.7'
148148
- template: .azure-pipelines/configure-template.yml
149149
parameters:
150-
TESTFLAGS: '--with-mpi --enable-vectorization --with-cuda=cuda10'
150+
TESTFLAGS: '--with-mpi --enable-vectorization --with-cuda=cuda11'
151151
CUDA: true
152152
BUILD: true
153153

154-
- job: compilation_CUDA11_gcc10
155-
displayName: 'Compilation CUDA 11 GCC 10'
154+
- job: compilation_CUDA11_gcc11
155+
displayName: 'Compilation CUDA 11 GCC 11'
156156
pool:
157-
vmImage: 'ubuntu-20.04'
157+
vmImage: 'ubuntu-22.04'
158158
variables:
159-
CC: gcc-10
160-
CXX: g++-10
161-
FC: gfortran-10
159+
CC: gcc-11
160+
CXX: g++-11
161+
FC: gfortran-11
162162
steps:
163163
- template: .azure-pipelines/install-template.yml
164164
parameters:
165165
CUDA: true
166-
CUDA_V: '11.4'
166+
CUDA_V: '11.7'
167167
- template: .azure-pipelines/configure-template.yml
168168
parameters:
169-
TESTFLAGS: '--with-mpi --enable-vectorization --with-cuda=cuda11'
169+
TESTFLAGS: '--with-mpi --enable-vectorization --with-cuda=cuda10'
170170
CUDA: true
171171
BUILD: true
172172

173173
- job: compilation_CUDA12
174-
displayName: 'Compilation CUDA 12 GCC 10'
174+
displayName: 'Compilation CUDA 12 GCC 12'
175175
pool:
176-
vmImage: 'ubuntu-20.04'
176+
vmImage: 'ubuntu-22.04'
177177
variables:
178-
CC: gcc-10
179-
CXX: g++-10
180-
FC: gfortran-10
178+
CC: gcc-12
179+
CXX: g++-12
180+
FC: gfortran-12
181181
steps:
182182
- template: .azure-pipelines/install-template.yml
183183
parameters:
@@ -195,7 +195,7 @@ jobs:
195195
- template: .azure-pipelines/install-template.yml
196196
parameters:
197197
CUDA: true
198-
CUDA_V: '12.1'
198+
CUDA_V: '12.9'
199199
- template: .azure-pipelines/configure-template.yml
200200
parameters:
201201
TESTFLAGS: '--with-mpi --enable-vectorization --with-cuda=cuda12'

.azure-pipelines/install-template.yml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu1804-README.md
77
# ubuntu-20.04:
88
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-README.md
9-
# ubuntu-22.04 "ubuntu-latest":
9+
# ubuntu-22.04:
1010
# https://github.com/actions/runner-images/blob/main/images/linux/Ubuntu2204-Readme.md
11-
#
11+
# ubuntu-24.04: "ubuntu-latest"
1212
parameters:
1313
- name: CUDA
1414
type: boolean
@@ -118,35 +118,38 @@ steps:
118118
#UBUNTU_VERSION=ubuntu2004
119119
## distribution jammy: from ubuntu 22.04
120120
#UBUNTU_VERSION=ubuntu2204
121+
## distribution noble: from ubuntu 24.04
122+
#UBUNTU_VERSION=ubuntu2204
121123
122124
# default
123-
UBUNTU_VERSION=ubuntu2004
125+
UBUNTU_VERSION=ubuntu2204
124126
125127
# CUDA_VERSION - specifies CUDA toolkit version
126128
echo "CUDA version: $CUDA_V"
127129
# http://developer.download.nvidia.com/compute/cuda/repos/
128130
if [ "$CUDA_V" == "6.5" ]; then
129-
## trusty
130131
CUDA_VERSION=6.5-14
131132
elif [ "$CUDA_V" == "9.2" ]; then
132-
## xenial
133133
CUDA_VERSION=9.2.148-1
134134
elif [ "$CUDA_V" == "10.2" ]; then
135-
## bionic
136135
CUDA_VERSION=10.2.89-1
137136
elif [ "$CUDA_V" == "11.4" ]; then
138-
## focal
139137
CUDA_VERSION=11.4.0-1
138+
elif [ "$CUDA_V" == "11.7" ]; then
139+
CUDA_VERSION=11.7.0-1
140140
elif [ "$CUDA_V" == "12.1" ]; then
141-
## focal
142141
CUDA_VERSION=12.1.1-1
142+
elif [ "$CUDA_V" == "12.9" ]; then
143+
CUDA_VERSION=12.9.0-1
143144
else
144145
# note: - on azure VM nodes with ubuntu 18.04, default gcc version is 9.3;
145146
# needs at least CUDA version 10.x
146147
# - on azure VM nodes with ubuntu 20.04, default gcc version is 10.3;
147148
# needs at least CUDA version 11.x
148-
# - on azure VM nodes with ubuntu-latest (22.04), default gcc version is 11.3;
149+
# - on azure VM nodes with ubuntu 22.04, default gcc version is 11.3;
149150
# needs at least CUDA version 11.7
151+
# - on azure VM nodes with ubuntu 24.04 (ubuntu-latest), default gcc version is 13.3;
152+
# needs at least CUDA version ?
150153
CUDA_VERSION=12.1.1-1
151154
fi
152155
echo

.github/scripts/run_build.sh

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,52 @@ else
4040
adios=()
4141
fi
4242

43+
## HDF5
44+
if [ "${HDF5}" == "true" ]; then
45+
echo
46+
echo "enabling HDF5"
47+
echo
48+
hdf=(--with-hdf5 HDF5_INC="/usr/include/hdf5/openmpi/" HDF5_LIBS="-L/usr/lib/x86_64-linux-gnu/hdf5/openmpi")
49+
else
50+
hdf=()
51+
fi
52+
53+
## HIP
54+
if [ "${HIP}" == "true" ]; then
55+
echo
56+
echo "enabling HIP"
57+
echo
58+
hip=(--with-hip HIPCC=g++ HIP_FLAGS="-O2 -g -std=c++17" HIP_PLATFORM=cpu HIP_INC=./external_libs/ROCm-HIP-CPU/include HIP_LIBS="-ltbb -lpthread -lstdc++")
59+
else
60+
hip=()
61+
fi
62+
63+
## special testflags
64+
if [ "${TESTFLAGS}" == "check-mcmodel-medium" ]; then
65+
# note: this is a work-around as using the 'env:' parameter in the workflow 'CI.yml' with TESTFLAGS: FLAGS_CHECK=".."
66+
# won't work as the FLAGS_CHECK string will then get split up and ./configure .. complains about unknown parameters.
67+
# here, we re-define TESTFLAGS with a single quote around FLAGS_CHECK=".." to avoid the splitting.
68+
# use FLAGS_CHECK
69+
flags=(FLAGS_CHECK="-O3 -mcmodel=medium -std=f2008 -Wall -Wno-do-subscript -Wno-conversion -Wno-maybe-uninitialized")
70+
TESTFLAGS="" # reset
71+
else
72+
flags=()
73+
fi
74+
4375
# configuration
4476
echo
4577
echo "configuration:"
4678
echo
4779

80+
# split TESTFLAGS into individual items
81+
set -- ${TESTFLAGS}
82+
4883
./configure \
49-
${adios[@]} \
50-
FC=gfortran MPIFC=mpif90 CC=gcc ${TESTFLAGS}
84+
"${adios[@]}" \
85+
"${hdf[@]}" \
86+
"${hip[@]}" \
87+
"${flags[@]}" \
88+
FC=gfortran MPIFC=mpif90 CC=gcc "$@"
5189

5290
# checks
5391
if [[ $? -ne 0 ]]; then echo "configuration failed:"; cat config.log; echo ""; echo "exiting..."; exit 1; fi
@@ -62,8 +100,14 @@ sed -i "s:IMAIN .*:IMAIN = ISTANDARD_OUTPUT:" setup/constants.h
62100

63101
# compilation
64102
echo
65-
echo "compilation:"
66-
make clean; make -j2 all
103+
echo "clean"
104+
echo
105+
make clean
106+
107+
echo
108+
echo "compilation"
109+
echo
110+
make -j4 all
67111

68112
# checks
69113
if [[ $? -ne 0 ]]; then exit 1; fi

.github/scripts/run_install.sh

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ if [[ $? -ne 0 ]]; then exit 1; fi
1515
# fortran/openMPI compiler
1616
sudo apt-get install -yq --no-install-recommends gfortran g++ openmpi-bin libopenmpi-dev
1717

18-
# parallel hdf5
19-
if [[ "${TEST}" == *"with-hdf5"* ]]; then
18+
## parallel HDF5
19+
if [ "${HDF5}" == "true" ]; then
2020
echo
21-
echo "additional installation: ${TEST}"
21+
echo "HDF5 additional installation:"
2222
echo
2323
sudo apt-get install -yq --no-install-recommends libhdf5-mpi-dev
2424
## checks installation paths
@@ -34,6 +34,14 @@ if [[ "${TEST}" == *"with-hdf5"* ]]; then
3434
#echo
3535
fi
3636

37+
## HIP
38+
if [ "${HIP}" == "true" ]; then
39+
echo
40+
echo "HIP additionals installation:"
41+
echo
42+
sudo apt-get install -yq --no-install-recommends libtbb-dev
43+
fi
44+
3745
# checks exit code
3846
if [[ $? -ne 0 ]]; then exit 1; fi
3947
echo

0 commit comments

Comments
 (0)