Skip to content

335 add hip backend #70

335 add hip backend

335 add hip backend #70

name: CMake on Linux (ROCM x86_64)
on:
#push:
# branches: [ $default-branch ]
pull_request:
branches: ["main"]
jobs:
build:
runs-on: [self-hosted, linux, x64, rocm]
strategy:
# Set fail-fast to false to ensure that feedback is delivered for all matrix combinations.
# Consider changing this to true when your workflow is stable.
fail-fast: false
matrix:
include:
- rocm_version: "7.14"
steps:
- uses: actions/checkout@v6
- name: Set reusable strings and path
# Turn repeated input strings (such as the build output directory) into step outputs. These step outputs can be used throughout the workflow file.
id: strings
run: |
echo "build-output-dir=${{github.workspace}}/build" >> "$GITHUB_OUTPUT"
ROCM_PATH=/opt/rocm/core-7.14
echo "ROCM_PATH=$ROCM_PATH" >> "$GITHUB_ENV"
echo "HIP_PATH=$ROCM_PATH" >> "$GITHUB_ENV"
echo "PATH=$HOME/cmake-4.4.2-linux-x86_64/bin/:$ROCM_PATH/bin:$PATH" >> "$GITHUB_ENV"
echo "CC=/opt/rocm/bin/amdclang" >> "$GITHUB_ENV"
echo "CXX=/opt/rocm/bin/amdclang++" >> "$GITHUB_ENV"
echo "HIPCXX=/opt/rocm/bin/amdclang++" >> "$GITHUB_ENV"
echo "LD_LIBRARY_PATH=/opt/rocm/core-7.14/lib:${LD_LIBRARY_PATH}" >> "$GITHUB_ENV"
echo "HSA_XNACK=1" >> "$GITHUB_ENV"
- name: Configure CMake
run: |
cmake -G "Ninja" -DENABLE_HIP=ON -DENABLE_CUDA=OFF -B ${{steps.strings.outputs.build-output-dir}} -DCMAKE_BUILD_TYPE="Release" -S ${{github.workspace}}
- name: Build
run: |
cmake --build ${{ steps.strings.outputs.build-output-dir }} --config Release
- name: Test
working-directory: ${{ steps.strings.outputs.build-output-dir }}
run: |
ctest --build-config Release --output-junit test_results.xml