Skip to content

[All] Build/Install/Test Arcane Framework (Ubuntu 22.04-24.04 / GCC 12-14 / CLang 16-19-21 / CUDA 13.0 / ROCM 6.4.3 / Minimal-Full / Release-Debug) #1287

[All] Build/Install/Test Arcane Framework (Ubuntu 22.04-24.04 / GCC 12-14 / CLang 16-19-21 / CUDA 13.0 / ROCM 6.4.3 / Minimal-Full / Release-Debug)

[All] Build/Install/Test Arcane Framework (Ubuntu 22.04-24.04 / GCC 12-14 / CLang 16-19-21 / CUDA 13.0 / ROCM 6.4.3 / Minimal-Full / Release-Debug) #1287

name: '[All] Build/Install/Test Arcane Framework (Ubuntu 22.04-24.04 / GCC 12-14 / CLang 16-19-21 / CUDA 13.0 / ROCM 6.4.3 / Minimal-Full / Release-Debug)'
# Attention : GitHub limite à 20 tests à la fois.
on:
schedule:
- cron: '23 1 * * *'
workflow_dispatch:
jobs:
build-install-test:
strategy:
fail-fast: false
matrix:
image:
- short: 'U22_G12'
long: 'ubuntu-2204'
compilo_name: 'gcc'
compilo_version: '12'
acc_compilo_name: ''
acc_compilo_version: ''
date: '20250112'
# Disable TBB because the version in ubuntu 2022 is too old
# (version 2021+ is required and this is version 2020)
args: '-DARCCORE_CXX_STANDARD=23 -DCMAKE_DISABLE_FIND_PACKAGE_TBB=TRUE'
execute_tests: true
- short: 'U22_C16'
long: 'ubuntu-2204'
compilo_name: 'clang'
compilo_version: '16'
acc_compilo_name: ''
acc_compilo_version: ''
date: '20250112'
# Disable TBB because the version in ubuntu 2022 is too old
# (version 2021+ is required and this is version 2020)
args: '-DARCCORE_CXX_STANDARD=23 -DCMAKE_DISABLE_FIND_PACKAGE_TBB=TRUE'
execute_tests: true
- short: 'U24_G14'
long: 'ubuntu-2404'
compilo_name: 'gcc'
compilo_version: '14'
acc_compilo_name: ''
acc_compilo_version: ''
date: '20250830'
args: '-DARCCORE_CXX_STANDARD=23'
execute_tests: true
- short: 'U24_C21'
long: 'ubuntu-2404'
compilo_name: 'clang'
compilo_version: '21'
acc_compilo_name: ''
acc_compilo_version: ''
date: '20250830'
args: '-DARCCORE_CXX_STANDARD=23'
execute_tests: true
- short: 'U24_G14_CU130'
long: 'ubuntu-2404'
compilo_name: 'gcc'
compilo_version: '14'
acc_compilo_name: 'cuda'
acc_compilo_version: '130'
date: '20250830'
# Disable googletest with CUDA because it requires a GPU driver
# CUDA 13 doesn't support arch < 80
args: '-DARCCORE_CXX_STANDARD=20
-DARCANE_EXECUTE_ACCELERATOR_GOOGLETEST=OFF
-DCMAKE_CUDA_ARCHITECTURES=80'
execute_tests: false
- short: 'U24_C19_CU130'
long: 'ubuntu-2404'
compilo_name: 'clang'
compilo_version: '19'
acc_compilo_name: 'cuda'
acc_compilo_version: '130'
date: '20250830'
# Disable googletest with CUDA because it requires a GPU driver
# CUDA 13 doesn't support arch < 80
args: '-DARCCORE_CXX_STANDARD=20
-DARCANE_EXECUTE_ACCELERATOR_GOOGLETEST=OFF
-DCMAKE_CUDA_ARCHITECTURES=80'
execute_tests: false
- short: 'U24_G14_CUC19'
long: 'ubuntu-2404'
compilo_name: 'gcc'
compilo_version: '14'
acc_compilo_name: 'clang_cuda'
# CLang 21 doesn't support CUDA 13.0.
acc_compilo_version: '19'
date: '20250120'
# Disable googletest with CUDA because it requires a GPU driver
args: '-DARCCORE_CXX_STANDARD=20 -DARCANE_EXECUTE_ACCELERATOR_GOOGLETEST=OFF'
execute_tests: false
- short: 'U24_G14_RC643'
long: 'ubuntu-2404'
compilo_name: 'gcc'
compilo_version: '14'
acc_compilo_name: 'rocm'
acc_compilo_version: '643'
date: '20250830'
args: '-DARCCORE_CXX_STANDARD=20 -DARCANE_EXECUTE_ACCELERATOR_GOOGLETEST=OFF'
execute_tests: false
- short: 'U24_C19_RC643'
long: 'ubuntu-2404'
compilo_name: 'clang'
compilo_version: '19'
acc_compilo_name: 'rocm'
acc_compilo_version: '643'
date: '20250830'
args: '-DARCCORE_CXX_STANDARD=20 -DARCANE_EXECUTE_ACCELERATOR_GOOGLETEST=OFF'
execute_tests: false
- short: 'U24_ACPP'
long: 'ubuntu-2404'
compilo_name: 'clang'
compilo_version: '19'
acc_compilo_name: 'acpp'
acc_compilo_version: ''
date: '20250830'
args: '-DARCCORE_CXX_STANDARD=23'
execute_tests: false
version:
- short: 'M'
long: 'minimal'
args: '-DARCANE_DISABLE_PERFCOUNTER_TESTS=ON'
- short: 'F'
long: 'full'
args: '-DARCANE_DISABLE_PERFCOUNTER_TESTS=ON
-DARCANE_DEFAULT_PARTITIONER=Metis
-DPTScotch_INCLUDE_DIR="/usr/include/scotch"'
config:
- type: 'Release'
ctest_args: '--timeout 1200'
- type: 'Debug'
ctest_args: '--timeout 1200'
mpi:
- implementation: 'OMPI'
- implementation: 'MPICH'
runner:
- runner_tag: 'ubuntu-latest'
runner_name: 'GH'
excluded_tests: ''
excluded_tests_with_labels: 'LARGE_HYBRID'
ctest_parallel_jobs: '-j4'
exclude:
# Certains packages ne sont pas compilés avec MPICH dans les images Full.
- { version: { short: 'F' }, mpi: { implementation: 'MPICH' } }
# Il n'y a pas CUDA ni ROCm dans les images Minimal.
- { version: { short: 'M' }, image: { short: 'U24_G14_CU130' } }
- { version: { short: 'M' }, image: { short: 'U24_C19_CU130' } }
- { version: { short: 'M' }, image: { short: 'U24_G14_CUC19' } }
- { version: { short: 'M' }, image: { short: 'U24_G14_RC643' } }
- { version: { short: 'M' }, image: { short: 'U24_C19_RC643' } }
- { version: { short: 'M' }, image: { short: 'U24_ACPP' } }
# Pas possible de compiler Arcane avec AdaptiveCpp en Debug.
- { config: { type: 'Debug' }, image: { short: 'U24_ACPP' } }
name: '[${{matrix.runner.runner_name}}][${{matrix.image.short}}_${{matrix.version.short}}]_${{matrix.mpi.implementation}}_${{matrix.config.type}}'
# La partie 'uses' est déterminée à la compilation, donc on ne peut pas mettre de variable ${{}}.
uses: 'arcaneframework/gh_actions/.github/workflows/reusable_test_framework.yml@v3'
with:
image: ghcr.io/arcaneframework/${{matrix.image.long}}:${{matrix.image.compilo_name}}-${{matrix.image.compilo_version}}_${{matrix.version.long}}_${{matrix.image.date}}
compilo_name: ${{ matrix.image.compilo_name }}
compilo_version: ${{ matrix.image.compilo_version }}
acc_compilo_name: ${{ matrix.image.acc_compilo_name }}
acc_compilo_version: ${{ matrix.image.acc_compilo_version }}
mpi: ${{ matrix.mpi.implementation }}
type_build: ${{ matrix.config.type }}
cmake_additionnal_args: '${{ matrix.image.args }} ${{ matrix.version.args }}'
verbose: true
with_samples: true
execute_tests: ${{ matrix.image.execute_tests }}
excluded_tests: ${{ matrix.runner.excluded_tests }}
excluded_tests_with_labels: ${{ matrix.runner.excluded_tests_with_labels }}
ctest_additionnal_args: '${{ matrix.config.ctest_args }} ${{ matrix.runner.ctest_parallel_jobs }}'
use_cache: false
artifact_key_prefix: ${{matrix.image.short}}_${{matrix.version.short}}_${{matrix.mpi.implementation}}_${{matrix.config.type}}
runner_tag: ${{ matrix.runner.runner_tag }}