Skip to content

Шеметов Даниил. Технология SEQ-MPI. Повышение контраста. Вариант 23. #2

Шеметов Даниил. Технология SEQ-MPI. Повышение контраста. Вариант 23.

Шеметов Даниил. Технология SEQ-MPI. Повышение контраста. Вариант 23. #2

Workflow file for this run

on: workflow_call:jobs: gcc-build: runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] build_type: [Release, Debug] steps: - uses: actions/checkout@v5 with: submodules: recursive - name: ccache uses: hendrikmuhs/ccache-action@v1.2 with: key: ${{ runner.os }}-gcc create-symlink: true max-size: 1G - name: CMake configure run: > cmake -S . -B build -G Ninja -D CMAKE_BUILD_TYPE=${{ matrix.build_type }} -DCMAKE_INSTALL_PREFIX=install env: CC: gcc-14 CXX: g++-14 - name: Archive revert list uses: actions/upload-artifact@v4 if: ${{ matrix.os == 'ubuntu-24.04' && matrix.build_type == 'Release' }} with: name: revert-list path: build/revert-list.txt - name: Build project run: | cmake --build build --parallel -- --quiet env: CC: gcc-14 CXX: g++-14 - name: Install project run: | cmake --build build --target install -- --quiet - name: Archive installed package uses: ./.github/actions/archive-install with: path: install name: ${{ matrix.build_type == 'Debug' && format('ubuntu-gcc-debug-install-{0}', matrix.os) || format('ubuntu-gcc-install-{0}', matrix.os) }} - name: Show ccache stats run: ccache --show-stats gcc-test: needs: - gcc-build runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-gcc-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-gcc-install-${{ matrix.os }}.tar.gz -C install - name: Run func tests (MPI) run: scripts/run_tests.py --running-type="processes" --counts 1 2 3 4 --additional-mpi-args="--oversubscribe" env: PPC_NUM_THREADS: 1 OMPI_ALLOW_RUN_AS_ROOT: 1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 - name: Run func tests (threads) run: scripts/run_tests.py --running-type="threads" --counts 1 2 3 4 env: PPC_NUM_PROC: 1 gcc-test-extended: needs: - gcc-test runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-gcc-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-gcc-install-${{ matrix.os }}.tar.gz -C install - name: Run func tests (threads extended) run: scripts/run_tests.py --running-type="threads" --counts 5 7 11 13 env: PPC_NUM_PROC: 1 clang-build: runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] steps: - uses: actions/checkout@v5 with: submodules: recursive - name: ccache uses: hendrikmuhs/ccache-action@v1.2 with: key: ${{ runner.os }}-clang create-symlink: true max-size: 1G - name: CMake configure run: > cmake -S . -B build -G Ninja -D CMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=install env: CC: clang-21 CXX: clang++-21 - name: Build project run: | cmake --build build --parallel -- --quiet env: CC: clang-21 CXX: clang++-21 - name: Install project run: | cmake --build build --target install -- --quiet - name: Archive installed package uses: ./.github/actions/archive-install with: path: install name: ubuntu-clang-install-${{ matrix.os }} - name: Show ccache stats run: ccache --show-stats clang-test: needs: - clang-build runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-clang-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-clang-install-${{ matrix.os }}.tar.gz -C install - name: Run func tests (MPI) run: scripts/run_tests.py --running-type="processes" --counts 1 2 3 4 --additional-mpi-args="--oversubscribe" env: PPC_NUM_THREADS: 1 OMPI_ALLOW_RUN_AS_ROOT: 1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 - name: Run tests (threads) run: scripts/run_tests.py --running-type="threads" --counts 1 2 3 4 env: PPC_NUM_PROC: 1 clang-test-extended: needs: - clang-test runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04", "ubuntu-24.04-arm"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-clang-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-clang-install-${{ matrix.os }}.tar.gz -C install - name: Run tests (threads extended) run: scripts/run_tests.py --running-type="threads" --counts 5 7 11 13 env: PPC_NUM_PROC: 1 clang-sanitizer-build: needs: - clang-build runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04"] steps: - uses: actions/checkout@v5 with: submodules: recursive - name: ccache uses: hendrikmuhs/ccache-action@v1.2 with: key: ${{ runner.os }}-clang create-symlink: true max-size: 1G - name: CMake configure run: > cmake -S . -B build -G Ninja -D CMAKE_BUILD_TYPE=RelWithDebInfo -D ENABLE_ADDRESS_SANITIZER=ON -D ENABLE_UB_SANITIZER=ON -D ENABLE_LEAK_SANITIZER=ON -D CMAKE_INSTALL_PREFIX=install env: CC: clang-21 CXX: clang++-21 - name: Build project run: | cmake --build build --parallel -- --quiet env: CC: clang-21 CXX: clang++-21 - name: Install project run: | cmake --build build --target install -- --quiet - name: Archive installed package uses: ./.github/actions/archive-install with: path: install name: ubuntu-clang-sanitizer-install-${{ matrix.os }} - name: Show ccache stats run: ccache --show-stats clang-sanitizer-test: needs: - clang-sanitizer-build runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-clang-sanitizer-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-clang-sanitizer-install-${{ matrix.os }}.tar.gz -C install - name: Run tests (MPI) run: scripts/run_tests.py --running-type="processes" --counts 2 --additional-mpi-args="--oversubscribe" env: PPC_NUM_THREADS: 2 PPC_ASAN_RUN: 1 ASAN_OPTIONS: abort_on_error=1 UBSAN_OPTIONS: halt_on_error=1 OMPI_ALLOW_RUN_AS_ROOT: 1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 - name: Run tests (threads) run: scripts/run_tests.py --running-type="threads" --counts 1 2 3 4 env: PPC_NUM_PROC: 1 PPC_ASAN_RUN: 1 ASAN_OPTIONS: abort_on_error=1 UBSAN_OPTIONS: halt_on_error=1 clang-sanitizer-test-extended: needs: - clang-sanitizer-test runs-on: ${{ matrix.os }} container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} strategy: matrix: os: ["ubuntu-24.04"] steps: - uses: actions/checkout@v5 - name: Download installed package uses: actions/download-artifact@v5 with: name: ubuntu-clang-sanitizer-install-${{ matrix.os }} - name: Extract installed package run: | mkdir -p install tar -xzvf ubuntu-clang-sanitizer-install-${{ matrix.os }}.tar.gz -C install - name: Run tests (threads extended) run: scripts/run_tests.py --running-type="threads" --counts 5 7 11 13 env: PPC_NUM_PROC: 1 PPC_ASAN_RUN: 1 gcc-build-codecov: needs: - gcc-test-extended - clang-test-extended runs-on: ubuntu-24.04 container: image: ghcr.io/learning-process/ppc-ubuntu:1.1 credentials: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v5 with: submodules: recursive - name: ccache uses: hendrikmuhs/ccache-action@v1.2 with: key: ${{ runner.os }}-gcc create-symlink: true max-size: 1G - name: CMake configure run: > cmake -S . -B build -G Ninja -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_VERBOSE_MAKEFILE=ON -D USE_COVERAGE=ON - name: Build project run: | cmake --build build --parallel -- --quiet - name: Run tests (MPI) run: scripts/run_tests.py --running-type="processes" --additional-mpi-args="--oversubscribe" env: PPC_NUM_PROC: 2 PPC_NUM_THREADS: 2 OMPI_ALLOW_RUN_AS_ROOT: 1 OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 - name: Run tests (threads) run: scripts/run_tests.py --running-type="threads" --counts 1 2 3 4 env: PPC_NUM_PROC: 1 - name: Generate gcovr Coverage Data run: | mkdir cov-report cd build gcovr --gcov-executable `which gcov-14` \ -r ../ \ --exclude '.*3rdparty/.*' \ --exclude '/usr/.*' \ --exclude '.*tasks/.*/tests/.*' \ --exclude '.*modules/.*/tests/.*' \ --exclude '.*tasks/common/runners/.*' \ --exclude '.*modules/runners/.*' \ --exclude '.*modules/util/include/perf_test_util.hpp' \ --exclude '.*modules/util/include/func_test_util.hpp' \ --exclude '.*modules/util/src/func_test_util.cpp' \ --xml --output ../coverage.xml \ --html=../cov-report/index.html --html-details - name: Upload coverage reports to Codecov uses: codecov/codecov-action@v5.5.1 with: files: coverage.xml token: ${{ secrets.CODECOV_TOKEN }} - name: Upload coverage report artifact id: upload-cov uses: actions/upload-artifact@v4 with: name: cov-report path: 'cov-report' - name: Comment coverage report link # TODO: Support PRs from forks and handle cases with insufficient write permissions continue-on-error: true uses: peter-evans/create-or-update-comment@v5 with: token: ${{ secrets.GITHUB_TOKEN }} issue-number: ${{ github.event.pull_request.number }} body: | Coverage report is available for download [here](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}) - name: Show ccache stats run: ccache --show-stats

Check failure on line 1 in .github/workflows/ubuntu.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/ubuntu.yml

Invalid workflow file

You have an error in your yaml syntax