Skip to content

Move component arcane_accelerator_core from Arcane to Arccore #5621

Move component arcane_accelerator_core from Arcane to Arccore

Move component arcane_accelerator_core from Arcane to Arccore #5621

name: '[Check] Build/Install/Test Arcane Framework (Ubuntu 22.04-24.04 / GCC 12-14 / CLang 16-21 / CUDA 13.0 / Minimal-Full)'
on:
push:
branches: [ main, dev/cea ]
pull_request:
branches: [ main, dev/cea ]
paths-ignore:
- '**.css'
- '**.dox'
- '**.doxyfile'
- '**.geo'
- '**.goto'
- '**.html'
- '**.jpg'
- '**.js'
- '**.markdown'
- '**.md'
- '**.odg'
- '**.old'
- '**.png'
- '**.py'
- '**.samples'
- '**.svg'
- '**.webp'
- '**.yml'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
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: '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
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
-DARCANE_USE_HASHTABLEMAP2_FOR_ITEMINTERNALMAP=ON
-DPTScotch_INCLUDE_DIR="/usr/include/scotch"'
config:
- type: 'Check'
ctest_args: '--timeout 1200'
mpi:
- implementation: 'OMPI'
- implementation: 'MPICH'
runner:
- runner_tag: 'm-1'
runner_name: 'M1'
excluded_tests: ''
excluded_tests_with_labels: ''
ctest_parallel_jobs: '-j12'
- runner_tag: 'ubuntu-latest'
runner_name: 'GH'
excluded_tests: '^.*([5-9]proc|[1-9][0-9]+proc|[5-9]thread|[1-9][0-9]+thread).*$'
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 dans les images Minimal.
- { version: { short: 'M' }, image: { short: 'U24_G14_CU130' } }
# Ce test est fait par build_tests_required.
- { image: { short: 'U24_C21' }, version: { short: 'M' }, config: { type: 'Check' }, mpi: { implementation: 'OMPI' } }
# Les tests Full sont faits par les runners M1.
- { version: { short: 'F' }, runner: { runner_tag: 'ubuntu-latest' } }
# Les tests Minimal sont faits par les runners GH.
- { version: { short: 'M' }, runner: { runner_tag: 'm-1' } }
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'
secrets: inherit
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
ccache_debug_mode: false
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 }}'
cache_key_prefix: ${{matrix.image.short}}_${{matrix.version.short}}
artifact_key_prefix: ${{matrix.image.short}}_${{matrix.version.short}}_${{matrix.mpi.implementation}}_${{matrix.config.type}}
runner_tag: ${{ matrix.runner.runner_tag }}