Skip to content

Commit d5d8dc0

Browse files
Merge branch 'main' into dev/reenable_gluon_hangs
2 parents a356903 + 9f65a9b commit d5d8dc0

File tree

569 files changed

+28969
-42883
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

569 files changed

+28969
-42883
lines changed

.github/workflows/build-test-reusable.yml

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -329,14 +329,6 @@ jobs:
329329
export PYTEST_MAX_PROCESSES=4
330330
${{ env.TRITON_TEST_CMD }} --triton-kernels
331331
332-
# FIXME: make sure new tutorials are added to one of the groups (scaled_dot, rest, tutorial-faX)
333-
- name: Select tutorials to run (scaled_dot)
334-
if: matrix.suite == 'scaled_dot'
335-
run: |
336-
cat <<EOF | tee tutorials.txt
337-
09-persistent-matmul
338-
EOF
339-
340332
- name: Select tutorials to run (rest)
341333
if: matrix.suite == 'rest'
342334
run: |
@@ -348,11 +340,12 @@ jobs:
348340
05-layer-norm
349341
07-extern-functions
350342
08-grouped-gemm
343+
09-persistent-matmul
351344
10-experimental-block-pointer
352345
EOF
353346
354347
- name: Run Tutorials
355-
if: matrix.suite == 'scaled_dot' || matrix.suite == 'rest'
348+
if: matrix.suite == 'rest'
356349
run: |
357350
${{ env.TRITON_TEST_CMD }} --select-from-file tutorials.txt --tutorial
358351

.github/workflows/build-test.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,16 @@ on:
4848
branches:
4949
- main
5050
- release/**
51+
paths-ignore:
52+
- '**/*.md'
53+
- '.github/ISSUE_TEMPLATE/**'
5154
push:
5255
branches:
5356
- main
5457
- release/**
58+
paths-ignore:
59+
- '**/*.md'
60+
- '.github/ISSUE_TEMPLATE/**'
5561

5662
# Cancels in-progress PR runs when the PR is updated. Manual runs are never cancelled.
5763
concurrency:

.github/workflows/build-windows.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,16 @@ on:
77
branches:
88
- main
99
- release/**
10+
paths-ignore:
11+
- '**/*.md'
12+
- '.github/ISSUE_TEMPLATE/**'
1013
push:
1114
branches:
1215
- main
1316
- release/**
17+
paths-ignore:
18+
- '**/*.md'
19+
- '.github/ISSUE_TEMPLATE/**'
1420

1521
permissions: read-all
1622

.github/workflows/inductor-tests.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ env:
5252
inductor/test_select_algorithm.py
5353
inductor/test_max_autotune.py
5454
inductor/test_compile_subprocess.py
55+
inductor/test_analysis.py
5556
5657
jobs:
5758
compute-params:

.github/workflows/integration-tests-amd.yml

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,31 +13,33 @@ jobs:
1313
integration-tests-amd:
1414
runs-on: ${{ matrix.runner }}
1515
timeout-minutes: 45
16-
continue-on-error: ${{ matrix.runner[1] == 'gfx90a' }}
16+
continue-on-error: ${{ matrix.runner[1] == 'gfx90a' || matrix.runner[0] == 'amd-gfx950' }}
1717
strategy:
1818
matrix:
1919
runner: ${{ fromJson(inputs.matrix) }}
2020
include:
21-
- image: rocm/pytorch:rocm6.2.2_ubuntu22.04_py3.10_pytorch_2.5.1_asan
21+
- image: rocm/pytorch:rocm7.0_ubuntu22.04_py3.10_pytorch_release_2.8.0
2222
runner: ["self-hosted", "gfx90a"]
2323
# Cache save/restore is on the host machine at directory /home/runner/.triton, while in the docker
2424
# container expect it at /github/home/.triton. So map here to make sure visible in docker.
2525
options: >-
2626
--device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined --group-add video --user root
2727
--volume /home/runner/.triton:/github/home/.triton
28-
- image: rocm/pytorch:rocm6.2.2_ubuntu22.04_py3.10_pytorch_2.5.1_asan
28+
- image: rocm/pytorch:rocm7.0_ubuntu22.04_py3.10_pytorch_release_2.8.0
2929
runner: ["amd-gfx942"]
3030
# We add --env-file to pull in HIP_VISIBLE_DEVICES and ROCR_VISIBLE_DEVICES definition for GPU isolation.
3131
options: >-
3232
--device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined --group-add video --user root
3333
--env-file /etc/podinfo/gha-gpu-isolation-settings
3434
--volume /home/runner/.triton:/github/home/.triton
35-
- image: rocm/7.0-preview:rocm7.0_preview_ubuntu22.04_llama2_70b_training_mlperf_mi35X_prealpha
35+
- image: rocm/pytorch:rocm7.0_ubuntu22.04_py3.10_pytorch_release_2.8.0
3636
runner: ["amd-gfx950"]
37+
# We add --env-file to pull in HIP_VISIBLE_DEVICES and ROCR_VISIBLE_DEVICES definition for GPU isolation.
3738
options: >-
3839
--device=/dev/kfd --device=/dev/dri --security-opt seccomp=unconfined --group-add video --user root
3940
--env-file /etc/podinfo/gha-gpu-isolation-settings
4041
--volume /home/runner/.triton:/github/home/.triton
42+
--volume /triton-data:/triton-data
4143
env:
4244
RUNNER_TYPE: ${{ matrix.runner[1] }}
4345
TRITON_BUILD_WITH_CCACHE: "true"
@@ -83,14 +85,16 @@ jobs:
8385
~/.triton/nvidia
8486
~/.triton/json
8587
key: ${{ runner.os }}-${{ runner.arch }}-llvm-${{ steps.cache-key.outputs.llvm }}-nvidia-${{ steps.cache-key.outputs.nvidia }}-json-${{ steps.cache-key.outputs.json }}
88+
- name: Install dependencies
89+
run: apt-get install -y clang lld ccache
8690
- name: Inspect cache directories
8791
run: |
8892
mkdir -p ~/.triton
8993
du -h -d 1 ~/.triton
9094
9195
mkdir -p ~/.ccache
9296
du -h -d 1 ~/.ccache
93-
- name: Update compiler to clang
97+
- name: Update compiler to Clang
9498
run: |
9599
export CC=/usr/bin/clang
96100
export CXX=/usr/bin/clang++
@@ -100,19 +104,19 @@ jobs:
100104
echo "PATH is '$PATH'"
101105
pip uninstall -y triton pytorch-triton-rocm
102106
103-
if [ "${{ matrix.runner[0] }}" != "amd-gfx950" ]; then
104-
ccache --zero-stats
107+
ccache --zero-stats
108+
if [ "${{ matrix.runner[0] }}" = "amd-gfx950" ]; then
109+
pip install --cache-dir /triton-data/pip-cache -r python/requirements.txt
110+
pip install --cache-dir /triton-data/pip-cache -r python/test-requirements.txt
105111
fi
106-
107112
make dev-install
108-
- name: CCache Stats
109-
if: ${{ matrix.runner[0] != 'amd-gfx950' }}
113+
- name: Print ccache stats
110114
run: ccache --print-stats
111115
- name: Run lit tests
112116
run: make test-lit
113117
- name: Run C++ unittests
114118
run: make test-cpp
115-
- name: Run python tests on AMD
119+
- name: Run Python tests on AMD
116120
run: |
117121
INSTRUMENTATION_LIB_DIR="${GITHUB_WORKSPACE}/python/triton/instrumentation"
118122
if [ ! -d "${INSTRUMENTATION_LIB_DIR}" ]; then

.github/workflows/spirvrunner-test.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,15 @@ on:
66
pull_request:
77
branches:
88
- main
9+
paths-ignore:
10+
- '**/*.md'
11+
- '.github/ISSUE_TEMPLATE/**'
912
push:
1013
branches:
1114
- main
15+
paths-ignore:
16+
- '**/*.md'
17+
- '.github/ISSUE_TEMPLATE/**'
1218

1319
permissions: read-all
1420

.github/workflows/third-party-benchmarks.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,18 @@ jobs:
223223
--max-new-tokens $MAX_NEW_TOKENS \
224224
--batch-size $BATCH_SIZE
225225
226+
- name: Run launch microbenchmark tests
227+
if: ${{ steps.install.outcome == 'success' && !cancelled() && (inputs.benchmarks == '' || contains(fromJson(inputs.benchmarks || '[]'), 'launch_micro_benchmarks')) && !contains(fromJson(inputs.skip_benchmarks || '[]'), 'launch_micro_benchmarks') }}
228+
run: |
229+
source scripts/capture-hw-details.sh
230+
python python/test/microbenchmark/launch_overhead.py --reports $REPORTS
231+
232+
python benchmarks/third_party/vllm/transform_results.py $REPORTS/launch_overhead_results.csv $REPORTS/launch_overhead-report.csv \
233+
--tag $TAG \
234+
--bgroup overhead \
235+
--benchmark launch-overhead \
236+
--param_cols="input_type"
237+
226238
- name: Upload benchmark reports
227239
if: ${{ steps.install.outcome == 'success' && !cancelled() }}
228240
uses: actions/upload-artifact@v5

.github/workflows/triton-benchmarks.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,9 @@ env:
6565
VERIFY: ${{ (github.event_name == 'pull_request' || github.event_name == 'schedule' || inputs.verify) && '1' || '0' }}
6666
TAG: ${{ inputs.tag || (github.event_name == 'pull_request' && format('pr-{0}', github.event.number)) || (github.event_name == 'schedule' && 'ci') || 'test' }}
6767
N_RUNS: ${{ inputs.n_runs || '1' }}
68+
# FIXME: Enable Level Zero v2 loader once it's stable.
69+
# https://github.com/intel/intel-xpu-backend-for-triton/issues/5572
70+
UR_LOADER_USE_LEVEL_ZERO_V2: "0"
6871

6972
jobs:
7073
build:

.github/workflows/try-latest-pytorch.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ jobs:
9696
inductor/test_select_algorithm.py
9797
inductor/test_max_autotune.py
9898
inductor/test_compile_subprocess.py
99+
inductor/test_analysis.py
99100
runner_label: ${{ inputs.runner_label }}
100101
python_version: "3.10"
101102

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ pytest.ini
5151
# Instrumentation
5252
python/triton/instrumentation
5353

54+
# MLIR Plugin
55+
python/triton/plugins
56+
5457
# Python caches
5558
__pycache__/
5659
*.py[cod]

0 commit comments

Comments
 (0)