Skip to content

Add for_each_n algorithm to shp and mhp (#786) #21

Add for_each_n algorithm to shp and mhp (#786)

Add for_each_n algorithm to shp and mhp (#786) #21

Workflow file for this run

# SPDX-FileCopyrightText: Intel Corporation
#
# SPDX-License-Identifier: BSD-3-Clause
name: "PR Tests"
permissions: read-all
on:
push:
branches:
- main
pull_request:
env:
CTEST_OUTPUT_ON_FAILURE: 1
jobs:
checks:
runs-on: intel-ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Ubuntu dependencies
run: scripts/install-doxygen.sh
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: '3.10'
cache: 'pip'
- name: Install python dependencies
run: pip install -r requirements.txt
- name: Run checkers
run: pre-commit run --all
# disabled due to DRA-163
# unit_tests:
# runs-on: gkpvc
# timeout-minutes: 30
# strategy:
# # test everything, even if one fails
# fail-fast: false
# matrix:
# include:
# # - cxx: icpx
# - cxx: g++
# name: ${{ matrix.cxx }}
# env:
# CXX: ${{ matrix.cxx }}
# steps:
# - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
# - name: Generate
# run: cmake -B build
# - name: Build
# run: make -C build -j
# - name: Unit tests
# run: ctest --test-dir build -L TESTLABEL -j 4
# - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4
# if: always()
# with:
# name: log-gcc-${{ env.CXX }}
# path: |
# build/Testing
# build/test/gtest/mhp/*.log
# build/benchmarks/gbench/mhp/*.log
# build/examples/mhp/*.log
pvc_unit_tests:
runs-on: gkpvc
timeout-minutes: 30
strategy:
# test everything, even if one fails
fail-fast: false
matrix:
include:
# Disabled because it gets a timeout 1/2 the time
#- config: Debug
- config: Release
name: pvc-impi-icpx-${{ matrix.config }}
env:
CXX: icpx
FI_PROVIDER: tcp
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Generate
run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }}
- name: Save environment dump
run: printenv > build/envdump.txt
# change this step to building just tests once unittest job is back
- name: Build everything
run: make -C build -j
# - name: Build tests
# run: cmake --build build --target all-tests -- -j
- name: Unit tests
# run: srun -p cluster scripts/run_command_on_compute_node.sh build/Testing/tests.outerr.txt ctest --test-dir build -L TESTLABEL -j 4
run: ctest --test-dir build -L TESTLABEL -j 4
- uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4
if: always()
with:
name: log-pvc-impi-icpx-${{ matrix.config }}
path: |
build/CMakeCache.txt
build/envdump.txt
build/Testing
build/test/gtest/mhp/*.log
build/benchmarks/gbench/mhp/*.log
build/examples/mhp/*.log
build/test/gtest/shp/*.log
build/benchmarks/gbench/shp/*.log
build/examples/shp/*.log
# disabled due to DRA-164
# ishmem_unit_tests:
# runs-on: gkpvc
# timeout-minutes: 30
# strategy:
# # test everything, even if one fails
# fail-fast: false
# matrix:
# include:
# # Disabled because also gets a timeout
# # - config: Debug
# - config: Release
# name: ishmem-impi-icpx-${{ matrix.config }}
# env:
# CXX: icpx
# steps:
# - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
# - name: Generate
# run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DENABLE_ISHMEM=on -DENABLE_L0=on -DENABLE_OFI=on -DOFI_PROVIDER=psm3 -DONETILE_PVC=on
# - name: Build ISHMEM
# run: cmake --build build --target shmem -- -j
# - name: Build MHP tests
# run: cmake --build build --target mhp-tests mhp-tests-3 -- -j
# - name: MHP unit tests
# # run: srun -p cluster scripts/run_command_on_compute_node.sh build/Testing/mhptests.outerr.txt ctest --test-dir build -R ^mhp-tests-sycl -L MHP -j 4
# run: ctest --test-dir build -R ^mhp-tests-sycl -L MHP -j 4
# - uses: actions/upload-artifact@0b2256b8c012f0828dc542b3febcab082c67f72b # v4.3.4
# if: always()
# with:
# name: log-ishmem-impi-icpx-${{ matrix.config }}
# path: |
# build/Testing
# build/test/gtest/mhp/*.log
# build/benchmarks/gbench/mhp/*.log
# build/examples/mhp/*.log
publish:
# needs: [checks, unit_tests, pvc_unit_tests, ishmem_unit_tests]
needs: [checks, pvc_unit_tests]
runs-on: intel-ubuntu-latest
timeout-minutes: 10
permissions:
contents: write
env:
SPHINXOPTS: -q -W
if: ${{ github.ref == 'refs/heads/main' }}
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
with:
python-version: '3.10'
cache: 'pip'
- run: pip install -r requirements.txt
- name: Ubuntu dependencies
run: scripts/install-doxygen.sh
- name: Build doc
run: |
make -C doc/spec html
- name: Checkout gh-pages
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
ref: gh-pages
path: gh-pages
- name: Publish to github pages
run: |
rm -rf gh-pages/spec gh-pages/doxygen
touch gh-pages/.nojekyll
cp -r doc/spec/build/html gh-pages/spec
cp -r doc/spec/build/doxygen-html gh-pages/doxygen
cd gh-pages
git config user.name github-actions
git config user.email [email protected]
git add .
# Ignore errors because no updates returns an error status.
git commit --reset-author --amend -m "Update from github actions"
git push --force origin gh-pages