Skip to content

Enable rocm and vulkan build in CI workflow for PJRT plugin #3879

Enable rocm and vulkan build in CI workflow for PJRT plugin

Enable rocm and vulkan build in CI workflow for PJRT plugin #3879

# Copyright 2024 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
name: CI - Linux x64 clang
on:
workflow_dispatch:
pull_request:
push:
branches:
- main
concurrency:
# A PR number if a pull request and otherwise the commit hash. This cancels
# queued and in-progress runs for the same PR (presubmit) or commit
# (postsubmit). The workflow name is prepended to avoid conflicts between
# different workflows.
group: ${{ github.workflow }}-${{ github.event.number || github.sha }}
cancel-in-progress: true
jobs:
setup:
uses: ./.github/workflows/setup.yml
linux_x64_clang:
needs: setup
if: contains(fromJson(needs.setup.outputs.enabled-jobs), 'linux_x64_clang')
runs-on: azure-linux-scale
container:
image: ghcr.io/iree-org/cpubuilder_ubuntu_jammy@sha256:78a558b999b230f7e1da376639e14b44f095f30f1777d6a272ba48c0bbdd4ccb
defaults:
run:
shell: bash
env:
BUILD_DIR: build
SCCACHE_AZURE_CONNECTION_STRING: "${{ secrets.AZURE_CCACHE_CONNECTION_STRING }}"
SCCACHE_AZURE_BLOB_CONTAINER: ccache-container
SCCACHE_CACHE_ZSTD_LEVEL: 10
SCCACHE_AZURE_KEY_PREFIX: "ci_linux_x64_clang"
steps:
- name: "Checking out repository"
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Install Python requirements
run: python3 -m pip install -r ./runtime/bindings/python/iree/runtime/build_requirements.txt
- name: CMake - configure
run: |
source ./build_tools/cmake/setup_sccache.sh
cmake \
-G Ninja \
-B ${BUILD_DIR} \
-DPython3_EXECUTABLE="$(which python3)" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DIREE_BUILD_PYTHON_BINDINGS=ON \
-DIREE_ENABLE_LLD=ON \
-DIREE_ENABLE_ASSERTIONS=ON \
-DIREE_BUILD_DOCS=ON \
-DIREE_TARGET_BACKEND_WEBGPU_SPIRV=ON
- name: CMake - build
run: |
cmake --build ${BUILD_DIR} -- -k 0
cmake --build ${BUILD_DIR} --target install -- -k 0
cmake --build ${BUILD_DIR} --target iree-test-deps -- -k 0
sccache --show-stats
- name: Run CTest
run: ./build_tools/cmake/ctest_all.sh "${BUILD_DIR}"
- name: Test iree-dialects
run: ./build_tools/cmake/test_iree_dialects.sh "${BUILD_DIR}"