Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Track E2E gaps for LLVM-path vs SPIRV-path. #224

Closed
tdeng5 opened this issue Jan 10, 2024 · 6 comments
Closed

Track E2E gaps for LLVM-path vs SPIRV-path. #224

tdeng5 opened this issue Jan 10, 2024 · 6 comments

Comments

@tdeng5
Copy link

tdeng5 commented Jan 10, 2024

Issue Description

Try to run E2E test on llvm-path, figure out the gaps for llvm-path vs spirv-path.

Code Example

System Info

  • OS:
  • PyTorch:
  • Intel Extension For Pytorch:
  • LLVM Version.
  • Triton Version:
  • Intel® XPU Backend for Triton*:
@ESI-SYD
Copy link
Contributor

ESI-SYD commented Jan 11, 2024

Update 1: E2E test in SPIRV path

Upstream openai/triton run torchinductor E2E test for CUDA device based on torch-inductor-tests.yml like:

          ./.github/workflows/torch-inductor/scripts/install_torchinductor.sh torchbench
      - name: Environment
        run: |
          source /opt/torchinductor_venv/bin/activate
          ./.github/workflows/torch-inductor/scripts/install_triton.sh
      - name: Performance
        run: |
          ./.github/workflows/torch-inductor/scripts/run_torchinductor_perf.sh torchbench

Benchmark commands: run_torchinductor_perf.sh

echo "Running with Triton Nightly"
for model in "${MODELS[@]}"; do
  if [ "$model" != "$MODEL_SPEC" ] && [ "$MODEL_SPEC" != "all" ]; then
    continue
  fi
  echo "Running performance test for $model"
  python3 benchmarks/dynamo/"$model".py --float32 -dcuda --training --inductor --performance \
    --output "$TRITON_TEST_REPORTS_DIR"/"$model".csv
done

Note:
Since pytorch XPU upstream is WIP, and E2E test need pytorch dynamo benchmark scripts, so we need to build public torch and ipex with patches for XPU.

We manage version of Pytorch and IPEX as Pre-Request in ci_pins like:

torch_repo=https://github.com/pytorch/pytorch.git
torch_branch=release/2.1
torch_commit=209f2fa8ff86652f67d75c2f19bf9cb9942fd018
ipex_repo=https://github.com/intel/intel-extension-for-pytorch.git
ipex_branch=xpu-main-pre
ipex_commit=7980a37028023037b4f0b47617c5fc3343a6d09b
oneapi_version=2024.0

torch patches

We have implemented this for huggingface suite, including accuracy check and performance test.
E2E
E2E nightly
doc

@ESI-SYD
Copy link
Contributor

ESI-SYD commented Jan 11, 2024

Update 2: Gap to run E2E in llvm-path

  1. Support for pytorch 2.4 #151 Dynamo benchmark needed

  2. Use oneAPI 2024.0 rather than 2023.2 to align with PyTorch. #173 Also IPEX's requirements

  3. apply torch patches

@etiotto
Copy link
Contributor

etiotto commented Jan 15, 2024

@ESI-SYD according to your investigation we cannot yet run these benchmarks because because of the gaps highlighted here . Correct ? Any other issues you were able to uncover at this point ?

@ESI-SYD
Copy link
Contributor

ESI-SYD commented Jan 16, 2024

@ESI-SYD according to your investigation we cannot yet run these benchmarks because because of the gaps highlighted here . Correct ? Any other issues you were able to uncover at this point ?

yes, we can't run e2e directly for now. Also I added torch patch link.

@tdeng5 tdeng5 changed the title Try to run E2E test on llvm-path, figure out the gaps for llvm-path vs spirv-path. Track E2E gaps for both LLVM-path and SPIRV-path. Jan 19, 2024
@tdeng5 tdeng5 changed the title Track E2E gaps for both LLVM-path and SPIRV-path. Track E2E gaps for LLVM-path vs SPIRV-path. Jan 29, 2024
@ESI-SYD
Copy link
Contributor

ESI-SYD commented Feb 2, 2024

Issues from inductor E2E accuracy check on llvm-path summarized in: #412 #423 #438 #439

@vlad-penkin
Copy link
Contributor

llvm branch have reached the parity with the spirv branch this week

@vlad-penkin vlad-penkin assigned vlad-penkin and unassigned ESI-SYD Feb 9, 2024
@vlad-penkin vlad-penkin added this to the E2E pass rate milestone Feb 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants