Skip to content

Change llvm over to a choice of install or cache, default PRs to install #76

Change llvm over to a choice of install or cache, default PRs to install

Change llvm over to a choice of install or cache, default PRs to install #76

Workflow file for this run

name: Seed the cache for ock builds
on:
pull_request:
paths:
- '.github/workflows/pr_tests_cache.yml'
push:
branch: main
paths:
- 'source/**'
- 'clik/**'
- 'modules/**'
- 'examples/**'
- 'cmake/**'
- 'hal/**'
- '.github/workflows/pr_tests_cache.yml'
- '.github/actions/do_build_ock/**'
- '.github/actions/setup_build/**'
- '.github/action/do_build_pr/**'
- 'CMakeLists.txt'
workflow_dispatch:
env:
llvm_previous: '18'
llvm_current: '19'
concurrency:
group: pr-test-cache-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
actions: write
jobs:
ubuntu_22_llvm_prev_jobs:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
runs-on: ubuntu-22.04
container:
image: ghcr.io/uxlfoundation/ock_ubuntu_22.04-x86-64:latest
volumes:
- ${{github.workspace}}:${{github.workspace}}
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: setup ubuntu
uses: ./.github/actions/setup_build
with:
llvm_version: ${{ env.llvm_previous }}
llvm_build_type: RelAssert
save: true
llvm_source: install
- name: build host_x86_64
uses: ./.github/actions/do_build_pr/run_host_x86_64
with:
cache_seed: true
- name: build riscv M1
uses: ./.github/actions/do_build_pr/run_riscv_m1
with:
cache_seed: true
- name: build ubuntu_gcc_x86_64_riscv_fp16_cl3_0_unitcl_vecz
uses: ./.github/actions/do_build_pr/run_ubuntu_gcc_x86_64_riscv_fp16_cl3_0_unitcl_vecz
with:
cache_seed: true
ubuntu_22_llvm_current_jobs:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
needs: [ubuntu_22_llvm_prev_jobs]
runs-on: ubuntu-22.04
container:
image: ghcr.io/uxlfoundation/ock_ubuntu_22.04-x86-64:latest
volumes:
- ${{github.workspace}}:${{github.workspace}}
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: setup-ubuntu
uses: ./.github/actions/setup_build
with:
llvm_version: ${{ env.llvm_current }}
llvm_build_type: RelAssert
save: true
llvm_source: install
- name: build ubuntu_gcc_x86_64_riscv_fp16_cl3_0
uses: ./.github/actions/do_build_pr/run_ubuntu_gcc_x86_64_riscv_fp16_cl3_0
with:
cache_seed: true
- name: build ubuntu_gcc_x86_llvm_latest_x86_64_images_cl3_0_release
uses: ./.github/actions/do_build_pr/run_ubuntu_gcc_x86_llvm_latest_x86_64_images_cl3_0_release
with:
cache_seed: true
- name: build ubuntu_gcc_x86_64_refsi_g1_wi_cl3_0
uses: ./.github/actions/do_build_pr/run_ubuntu_gcc_x86_64_refsi_g1_wi_cl3_0
with:
cache_seed: true
# 32 bit x86
ubuntu_22_llvm_current_x86_jobs:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
needs: [ubuntu_22_llvm_current_jobs]
runs-on: ubuntu-22.04
container:
image: ghcr.io/uxlfoundation/ock_ubuntu_22.04-x86-64:latest
volumes:
- ${{github.workspace}}:${{github.workspace}}
steps:
- name: Checkout repo
uses: actions/checkout@v4
# installs tools, ninja, installs llvm and sets up sccache
- name: setup-ubuntu
uses: ./.github/actions/setup_build
with:
llvm_version: ${{ env.llvm_current }}
llvm_build_type: RelAssert
save: true
cross_arch: x86
llvm_source: install
- name: build ubuntu_clang_x86_llvm_latest_cl3_0_offline
uses: ./.github/actions/do_build_pr/run_ubuntu_clang_x86_llvm_latest_cl3_0_offline
with:
cache_seed: true
# aarch 64
ubuntu_22_llvm_current_aarch64_jobs:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
needs: [ubuntu_22_llvm_current_x86_jobs]
runs-on: ubuntu-22.04-arm
container:
image: ghcr.io/uxlfoundation/ock_ubuntu_22.04-aarch64:latest
volumes:
- ${{github.workspace}}:${{github.workspace}}
steps:
- name: Checkout repo
uses: actions/checkout@v4
# installs tools, ninja, installs llvm and sets up sccache
- name: setup-ubuntu
uses: ./.github/actions/setup_build
with:
llvm_version: ${{ env.llvm_current }}
llvm_build_type: RelAssert
save: true
llvm_source: install
- name: build ubuntu_gcc_aarch64_llvm_latest_cl3_0_fp16
uses: ./.github/actions/do_build_pr/run_ubuntu_gcc_aarch64_llvm_latest_cl3_0_fp16
with:
cache_seed: true
windows_llvm_current_jobs:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
needs: [ubuntu_22_llvm_current_aarch64_jobs]
runs-on: windows-2019
steps:
- name: Setup Windows llvm base
uses: llvm/actions/setup-windows@main
with:
arch: amd64
- name: Checkout repo
uses: actions/checkout@v4
# installs tools, ninja, installs llvm and sets up ccache
- name: setup-windows
uses: ./.github/actions/setup_build
with:
llvm_version: ${{ env.llvm_current }}
llvm_build_type: RelAssert
save: true
os: windows
llvm_source: cache
- name: build windows_msvc_x86_64_llvm_latest_cl3_0_offline
uses: ./.github/actions/do_build_pr/run_windows_msvc_x86_64_llvm_latest_cl3_0_offline
with:
cache_seed: true
# The following tries to delete old caches but fails on the branch due to permissions errors
# Look to uncomment in the future.
clean_cache:
if: github.repository == 'uxlfoundation/oneapi-construction-kit' || github.event_name != 'schedule'
needs: [windows_llvm_current_jobs]
runs-on: ubuntu-latest
permissions:
actions: write
steps:
- name: Checkout repo
uses: actions/checkout@v4
with:
sparse-checkout: .github
- name: Cache clean
uses: ./.github/actions/clean_cache
with:
token: ${{ secrets.GITHUB_TOKEN }}
cache_prefixes: "ccache-ccache-build-ubuntu ccache-ccache-build-windows"