Skip to content

Commit

Permalink
add arm llvm cache and build (required for comgr build)
Browse files Browse the repository at this point in the history
  • Loading branch information
pyYTn9 authored and pyYTn9 committed Jan 2, 2025
1 parent fb1d2ea commit 1f777ad
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -625,3 +625,59 @@ jobs:
# run: pip install -e '.[testing,arm]' --extra-index-url https://download.pytorch.org/whl/cpu
# - name: Test arm
# run: CI=1 ARM64=1 CLANG=1 python -m pytest -n=auto test/ -k 'not (test_nn.py and (test_conv_transpose2d or test_conv2d))' --ignore=test/models --ignore=test/test_speed_v_torch.py --ignore=test/test_net_speed.py --ignore=test/test_specific_conv.py --ignore=test/unit/test_disk_tensor.py
macos_tiny_tests:
name: Mac tiny tests on AMD
runs-on: [self-hosted, macOS]
timeout-minutes: 200
steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Install Dependencies
run: |
brew update
brew install cmake ninja llvm lld git
- name: Set LLVM Environment
run: |
# Set LLVM_PATH to the Homebrew LLVM installation
echo "LLVM_PATH=$(brew --prefix llvm)" >> $GITHUB_ENV
echo "LLVM_DIR=$(brew --prefix llvm)/lib/cmake/llvm" >> $GITHUB_ENV
echo "LLD_DIR=$(brew --prefix llvm)/lib/cmake/lld" >> $GITHUB_ENV
echo "CC=$(brew --prefix llvm)/bin/clang" >> $GITHUB_ENV
echo "CXX=$(brew --prefix llvm)/bin/clang++" >> $GITHUB_ENV
# Set HIP environment variables
echo "HIP_PATH=/usr/local/hip" >> $GITHUB_ENV
echo "PATH=/usr/local/hip/bin:$PATH" >> $GITHUB_ENV
echo "ROOT_DIR=`pwd`" >> $GITHUB_ENV
echo "INSTALL_DIR=$ROOT_DIR/usr/local" >> $GITHUB_ENV
- name: Cache LLVM Build
uses: actions/cache@v4
with:
path: llvm-project/build
key: llvm-build-${{ hashFiles('**/llvm-project/CMakeLists.txt') }}

- name: Build and Install libamd_comgr with LLVM
run: |
# Build LLVM project
git clone --depth 1 --filter=blob:none --sparse -b amd-staging https://github.com/ROCm/llvm-project.git
cd llvm-project
git sparse-checkout set llvm clang lld cmake third-party/benchmark third-party/unittest
mkdir -p build && cd build
cmake ../llvm \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_PROJECTS="llvm;clang;lld" \
-DLLVM_TARGETS_TO_BUILD="AMDGPU;AArch64" \
-DLLVM_ENABLE_RTTI=ON \
-DCMAKE_PREFIX_PATH=${LLVM_PATH} \
-DCMAKE_MODULE_PATH=${LLVM_PATH}/lib/cmake \
-DCMAKE_C_COMPILER=${CC} \
-DCMAKE_CXX_COMPILER=${CXX} \
-DLLVM_ENABLE_BENCHMARKS=OFF \
-DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} \
-G Ninja
ninja || exit 1 # Exit if build fails
ninja install
cd ../..

0 comments on commit 1f777ad

Please sign in to comment.