Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GitHub Runner: ubuntu-20.04 -> ubuntu-24.04 #4330

Merged
merged 1 commit into from
Feb 12, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ascent.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ concurrency:
jobs:
ascent:
name: Ascent
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
if: github.event.pull_request.draft == false
env:
CXX: g++
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/clang.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@ jobs:
# Build and install libamrex as AMReX CMake project
# Note: this is an intentional "minimal" build that does not enable (many) options
library_clang:
name: Clang@7.0 C++17 SP NOMPI Debug [lib]
runs-on: ubuntu-20.04
name: Clang@18 C++17 SP NOMPI Debug [lib]
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_clang.sh 7
.github/workflows/dependencies/dependencies_clang.sh 18
.github/workflows/dependencies/dependencies_clang-tidy-apt-llvm.sh 17
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
Expand Down Expand Up @@ -54,8 +54,8 @@ jobs:
-DAMReX_PLOTFILE_TOOLS=ON \
-DAMReX_PRECISION=SINGLE \
-DAMReX_PARTICLES_PRECISION=SINGLE \
-DCMAKE_C_COMPILER=$(which clang-7) \
-DCMAKE_CXX_COMPILER=$(which clang++-7) \
-DCMAKE_C_COMPILER=$(which clang-18) \
-DCMAKE_CXX_COMPILER=$(which clang++-18) \
-DCMAKE_Fortran_COMPILER=$(which gfortran) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
make -j 4
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/cuda.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,17 @@ jobs:
check_changes:
uses: ./.github/workflows/check_changes.yml

# Build libamrex and all tests with CUDA 11.2
tests-cuda11:
name: CUDA@11.2 GNU@9.3.0 C++17 Release [tests]
runs-on: ubuntu-20.04
# Build libamrex and all tests with CUDA 12.6
tests-cuda12:
name: CUDA@12.6 C++17 Release [tests]
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_nvcc.sh 11.2
.github/workflows/dependencies/dependencies_nvcc.sh 12.6
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
Expand Down Expand Up @@ -121,7 +121,7 @@ jobs:
# Build libamrex and all tests with NVHPC (recent supported)
tests-nvhpc-nvcc:
name: NVHPC NVCC/NVC++ C++17 Release [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -185,15 +185,15 @@ jobs:

# Build 3D libamrex cuda build with configure
configure-3d-cuda:
name: CUDA@11.2 GNU@9.3.0 [configure 3D]
runs-on: ubuntu-20.04
name: CUDA@12.6 [configure 3D]
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_nvcc.sh 11.2
.github/workflows/dependencies/dependencies_nvcc.sh 12.6
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/dependencies/dependencies_hip.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,9 @@ sudo apt-key add rocm.gpg.key

source /etc/os-release # set UBUNTU_CODENAME: focal or jammy or ...

echo "deb [arch=amd64] https://repo.radeon.com/rocm/apt/${1-latest} ${UBUNTU_CODENAME} main" \
VERSION=${1-6.3.2}

echo "deb [arch=amd64] https://repo.radeon.com/rocm/apt/${VERSION} ${UBUNTU_CODENAME} main" \
| sudo tee /etc/apt/sources.list.d/rocm.list
echo 'export PATH=/opt/rocm/llvm/bin:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin:$PATH' \
| sudo tee -a /etc/profile.d/rocm.sh
Expand All @@ -53,16 +55,16 @@ sudo apt-get install -y --no-install-recommends \
libnuma-dev \
libopenmpi-dev \
openmpi-bin \
rocm-dev \
roctracer-dev \
rocprofiler-dev \
rocrand-dev \
rocfft-dev \
rocprim-dev \
rocsparse-dev
rocm-dev${VERSION} \
roctracer-dev${VERSION} \
rocprofiler-dev${VERSION} \
rocrand-dev${VERSION} \
rocfft-dev${VERSION} \
rocprim-dev${VERSION} \
rocsparse-dev${VERSION}

# hiprand-dev is a new package that does not exist in old versions
sudo apt-get install -y --no-install-recommends hiprand-dev || true
sudo apt-get install -y --no-install-recommends hiprand-dev${VERSION} || true

# activate
#
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/dependencies/dependencies_nvcc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,7 @@ sudo apt-get install -y \
libcufft-dev-$VERSION_DASHED \
libcurand-dev-$VERSION_DASHED \
libcusparse-dev-$VERSION_DASHED

sudo apt-get install -y --no-install-recommends libnvjitlink-dev-$VERSION_DASHED || true

sudo ln -s cuda-$VERSION_DOTTED /usr/local/cuda
44 changes: 22 additions & 22 deletions .github/workflows/gcc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ jobs:
# Build and install libamrex as AMReX CMake project
# Note: this is an intentional "minimal" build that does not enable (many) options
library:
name: GNU@8.4 C++17 Release [lib]
runs-on: ubuntu-20.04
name: GNU@14 C++17 Release [lib]
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_gcc.sh 8
.github/workflows/dependencies/dependencies_gcc.sh 14
.github/workflows/dependencies/dependencies_clang-tidy-apt-llvm.sh 17
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
Expand All @@ -35,7 +35,7 @@ jobs:
restore-keys: |
ccache-${{ github.workflow }}-${{ github.job }}-git-
- name: Build & Install
env: {CXXFLAGS: "-fno-operator-names -Werror -Wall -Wextra -Wpedantic -Wnull-dereference -Wfloat-conversion -Wshadow -Woverloaded-virtual -Wnon-virtual-dtor -Wlogical-op -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wmissing-include-dirs"}
env: {CXXFLAGS: "-fno-operator-names -Werror -Wall -Wextra -Wpedantic -Wnull-dereference -Wfloat-conversion -Wshadow -Woverloaded-virtual -Wnon-virtual-dtor -Wlogical-op -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wmissing-include-dirs -Wno-array-bounds"}
run: |
export CCACHE_COMPRESS=1
export CCACHE_COMPRESSLEVEL=10
Expand All @@ -52,9 +52,9 @@ jobs:
-DAMReX_PLOTFILE_TOOLS=ON \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DCMAKE_INSTALL_PREFIX=/tmp/my-amrex \
-DCMAKE_C_COMPILER=$(which gcc-8) \
-DCMAKE_CXX_COMPILER=$(which g++-8) \
-DCMAKE_Fortran_COMPILER=$(which gfortran-8) \
-DCMAKE_C_COMPILER=$(which gcc-14) \
-DCMAKE_CXX_COMPILER=$(which g++-14) \
-DCMAKE_Fortran_COMPILER=$(which gfortran-14) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
make -j 4
make install
Expand Down Expand Up @@ -127,7 +127,7 @@ jobs:

tests_build_2D:
name: GNU@9.3 C++17 2D Debug Fortran [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -178,7 +178,7 @@ jobs:

tests_build_1D:
name: GNU@9.3 C++17 1D Debug Fortran [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -231,7 +231,7 @@ jobs:
# Build libamrex and all tests
tests_cxx20:
name: GNU@10.1 C++20 OMP [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -292,15 +292,15 @@ jobs:

# Build libamrex and all tests w/o MPI
tests-nonmpi:
name: GNU@8.4 C++17 NOMPI [tests]
runs-on: ubuntu-20.04
name: GNU@14 C++17 NOMPI [tests]
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_gcc.sh 8
.github/workflows/dependencies/dependencies_gcc.sh 14
.github/workflows/dependencies/dependencies_clang-tidy-apt-llvm.sh 17
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
Expand All @@ -311,7 +311,7 @@ jobs:
restore-keys: |
ccache-${{ github.workflow }}-${{ github.job }}-git-
- name: Build & Install
env: {CXXFLAGS: "-fno-operator-names -Werror -Wall -Wextra -Wpedantic -Wnull-dereference -Wfloat-conversion -Wshadow -Woverloaded-virtual -Wnon-virtual-dtor -Wlogical-op -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wmissing-include-dirs"}
env: {CXXFLAGS: "-fno-operator-names -Werror -Wall -Wextra -Wpedantic -Wnull-dereference -Wfloat-conversion -Wshadow -Woverloaded-virtual -Wnon-virtual-dtor -Wlogical-op -Wmisleading-indentation -Wduplicated-cond -Wduplicated-branches -Wmissing-include-dirs -Wno-array-bounds"}
run: |
export CCACHE_COMPRESS=1
export CCACHE_COMPRESSLEVEL=10
Expand All @@ -335,9 +335,9 @@ jobs:
-DAMReX_ENABLE_TESTS=ON \
-DAMReX_FORTRAN=ON \
-DAMReX_MPI=OFF \
-DCMAKE_C_COMPILER=$(which gcc-8) \
-DCMAKE_CXX_COMPILER=$(which g++-8) \
-DCMAKE_Fortran_COMPILER=$(which gfortran-8) \
-DCMAKE_C_COMPILER=$(which gcc-14) \
-DCMAKE_CXX_COMPILER=$(which g++-14) \
-DCMAKE_Fortran_COMPILER=$(which gfortran-14) \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache
make -j 4

Expand Down Expand Up @@ -417,7 +417,7 @@ jobs:
# Build 1D libamrex with configure
configure-1d:
name: GNU@9.3 Release [configure 1D]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -501,7 +501,7 @@ jobs:
# Build 3D libamrex with single precision and tiny profiler
configure-3d-single-tprof:
name: GNU@9.3 Release [configure 3D]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -544,7 +544,7 @@ jobs:
# Build 3D libamrex debug omp build with configure
configure-3d-omp-debug:
name: GNU@9.3 OMP Debug [configure 3D]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -586,7 +586,7 @@ jobs:
# Build Tools/Plotfile
plotfile-tools:
name: GNU Plotfile Tools [tools]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -679,7 +679,7 @@ jobs:

test_hdf5:
name: GNU@9.3 HDF5 I/O Test [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
env:
Expand Down
22 changes: 6 additions & 16 deletions .github/workflows/hip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ jobs:

tests-hip:
name: HIP ROCm Flang C++17 [tests]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_hip.sh
.github/workflows/dependencies/dependencies_hip.sh 6.3.2
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
Expand All @@ -46,11 +46,6 @@ jobs:
which clang++
which flang

# "mpic++ --showme" forgets open-pal in Ubuntu 20.04 + OpenMPI 4.0.3
# https://bugs.launchpad.net/ubuntu/+source/openmpi/+bug/1941786
# https://github.com/open-mpi/ompi/issues/9317
export LDFLAGS="-lopen-pal"

cmake -S . -B build \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DAMReX_FFT=ON \
Expand All @@ -73,14 +68,14 @@ jobs:

tests-hip-wrapper:
name: HIP ROCm GFortran@9.3 C++17 [tests-hipcc]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
- uses: actions/checkout@v4
- name: Dependencies
run: |
.github/workflows/dependencies/dependencies_hip.sh
.github/workflows/dependencies/dependencies_hip.sh 6.3.2
.github/workflows/dependencies/dependencies_ccache.sh
- name: Set Up Cache
uses: actions/cache@v4
Expand All @@ -104,11 +99,6 @@ jobs:
source /etc/profile.d/rocm.sh
hipcc --version

# "mpic++ --showme" forgets open-pal in Ubuntu 20.04 + OpenMPI 4.0.3
# https://bugs.launchpad.net/ubuntu/+source/openmpi/+bug/1941786
# https://github.com/open-mpi/ompi/issues/9317
export LDFLAGS="-lopen-pal"

cmake -S . -B build_full_legacywrapper \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DAMReX_FFT=ON \
Expand All @@ -133,7 +123,7 @@ jobs:
# Build 2D libamrex hip build with configure
configure-2d-single-hip:
name: HIP EB [configure 2D]
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down Expand Up @@ -168,7 +158,7 @@ jobs:
# Build 3D EB hip with gnu make
hip-3d-eb-gmake:
name: HIP EB 3D GMake
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
needs: check_changes
if: needs.check_changes.outputs.has_non_docs_changes == 'true'
steps:
Expand Down
Loading
Loading