Create integration-tests.yml #9
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Integration Tests | |
on: | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. | |
# You can convert this to a matrix build if you need cross-platform coverage. | |
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Triton | |
uses: actions/checkout@v4 | |
with: | |
repository: 'openai/triton' | |
ref: '215b2e77a1d92f907bc4addfa3c3ba204028c32e' # known good commit "Add Shared Middle Layer to Triton via Plug-In" | |
path: triton | |
submodules: 'recursive' | |
- name: Checkout Triton-Shared | |
uses: actions/checkout@v4 | |
with: | |
path: triton/third_party/triton_shared | |
- name: Clear cache | |
run: | | |
rm -rf ~/.triton | |
- name: Update PATH | |
run: | | |
echo "PATH=${HOME}/.local/bin:${PATH}" >> "${GITHUB_ENV}" | |
- name: Check pre-commit | |
run: | | |
python3 -m pip install --upgrade pre-commit | |
python3 -m pre_commit run --all-files --verbose | |
- name: Install Triton | |
run: | | |
export TRITON_CODEGEN_TRITON_SHARED=1 | |
git submodule update --init --recursive | |
cd python | |
python3 -m pip install --upgrade pip | |
python3 -m pip install cmake==3.24 | |
python3 -m pip install ninja | |
python3 -m pip uninstall -y triton | |
python3 setup.py build | |
python3 -m pip install --no-build-isolation -vvv '.[tests]' | |
- name: Run shared middle-layer lit tests | |
run: | | |
python3 -m pip install lit | |
cd python | |
LIT_TEST_DIR="build/$(ls build | grep -i cmake)/third_party/triton_shared/test" | |
if [ ! -d "${LIT_TEST_DIR}" ]; then | |
echo "Coult not find '${LIT_TEST_DIR}'" ; exit -1 | |
fi | |
lit -v "${LIT_TEST_DIR}" |