Add E2E CI #8
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: E2E CI Tests | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: [dev/triton-test-3.0] | |
merge_group: | |
branches: [dev/triton-test-3.0] | |
types: [checks_requested] | |
permissions: read-all | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
Inductor-XPU-E2E-CI-Tests: | |
runs-on: [self-hosted, Inductor_test] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Prepare Conda ENV | |
run: | | |
which conda | |
conda remove -yn e2e_ci --all | |
if conda env list | grep -q "^e2e_ci "; then source activate e2e_ci; else conda create -n e2e_ci python=3.9 cmake ninja -y; fi | |
conda install intel::mkl-static intel::mkl-include -y | |
pip install pandas scipy tqdm | |
- name: Prepare Pytorch | |
run: | | |
source activate e2e_ci | |
pwd | |
cd ../ && rm -rf pytorch | |
git clone -b dev/triton-test-3.0 https://github.com/Stonepia/pytorch.git pytorch | |
cd pytorch && git log -n 1 && git submodule sync && git submodule update --init --recursive | |
conda install -c conda-forge libstdcxx-ng -y | |
pip install pyyaml | |
pip install -r requirements.txt | |
python setup.py develop | |
- name: Prepare IPEX | |
run: | | |
source activate e2e_ci | |
source /opt/intel/oneapi/setvars.sh | |
python -c "import torch;print(f'torch version {torch.__version__}')" | |
python -m pip uninstall intel_extension_for_pytorch -y | |
export CMAKE_PREFIX_PATH=${CONDA_PREFIX:-"$(dirname $(which conda))/../"} | |
cd ${{ github.workspace }} | |
git submodule sync && git submodule update --init --recursive --jobs 0 | |
python -m pip install -r requirements.txt | |
python setup.py bdist_wheel | |
pip install --force-reinstall dist/*.whl | |
- name: Triton Installation | |
run: | | |
source activate e2e_ci | |
TRITON_PINNED_COMMIT=$(cat .github/ci_commit_pins/triton.txt) | |
echo ${TRITON_REPO}@${TRITON_PINNED_COMMIT} | |
cd ${{ github.workspace }} | |
cd .. | |
TRITON_REPO="https://github.com/intel/intel-xpu-backend-for-triton" | |
echo ${TRITON_REPO}@${TRITON_PINNED_COMMIT} | |
pip install --force-reinstall "git+${TRITON_REPO}@${TRITON_PINNED_COMMIT}#subdirectory=python" | |
- name: E2E dependancy install | |
uses: ./.github/scripts/install-e2e-suites | |
- name: Timm FP32 Inference Accuracy Test | |
uses: ./.github/actions/inductor-xpu-e2e-test | |
with: | |
suite: timm_models | |
dt: float32 | |
mode: inference | |
scenario: accuracy | |
expected_pass_num: 44 | |
- name: Torchbench BF16 Inference Accuracy Test | |
uses: ./.github/actions/inductor-xpu-e2e-test | |
with: | |
suite: torchbench | |
dt: amp_fp16 | |
mode: inference | |
scenario: accuracy | |
expected_pass_num: 45 |