From 88f56c52f08a93cc581ca4d1e6f83d6c0c708f4e Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Fri, 6 Dec 2024 10:39:53 +0100 Subject: [PATCH 01/12] Update PyTorch pin to the version which support elapsed_time; remove our patch for elapsed_time Signed-off-by: Anatoly Myachev --- .github/pins/pytorch-upstream.txt | 2 +- scripts/patch-pytorch.sh | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index aa41aecae0..5ac4915373 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -d0fd42eb3ac6939e63879bc055b6901103f713d3 +77748ed8ec2dea0deb6ffd59bd28329e6cdc9d56 diff --git a/scripts/patch-pytorch.sh b/scripts/patch-pytorch.sh index c9dbf931ca..5e35d25441 100755 --- a/scripts/patch-pytorch.sh +++ b/scripts/patch-pytorch.sh @@ -16,4 +16,3 @@ echo "Applying PyTorch patches in $REPO_ROOT" cd "$REPO_ROOT" curl -sSL https://github.com/pytorch/pytorch/pull/126516.diff | git apply - -curl -sSL https://github.com/pytorch/pytorch/pull/126456.diff | git apply - From b3dc591e98813dc4279728a0bdd0e48cd8d685dd Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Fri, 6 Dec 2024 15:20:14 +0100 Subject: [PATCH 02/12] another commit Signed-off-by: Anatoly Myachev --- .github/pins/pytorch-upstream.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 5ac4915373..734d308cab 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -77748ed8ec2dea0deb6ffd59bd28329e6cdc9d56 +8dd4673ceacad362f7c5c4bacdd52d64e2a9f601 From 797b46adf4749e158cf3ee05a82b32483e328800 Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Fri, 6 Dec 2024 17:07:36 +0100 Subject: [PATCH 03/12] another commit Signed-off-by: Anatoly Myachev --- .github/pins/pytorch-upstream.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 734d308cab..18f3d3ae5b 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -8dd4673ceacad362f7c5c4bacdd52d64e2a9f601 +61dc5e9c0a36d590adc47b4110efd94d9eb59306 From bd5b0b96d4d5253e4a61464de6aa7ad309a065a2 Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Fri, 6 Dec 2024 18:50:26 +0100 Subject: [PATCH 04/12] Update scripts/patch-pytorch.sh --- scripts/patch-pytorch.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/patch-pytorch.sh b/scripts/patch-pytorch.sh index 5e35d25441..5f4248b6d8 100755 --- a/scripts/patch-pytorch.sh +++ b/scripts/patch-pytorch.sh @@ -16,3 +16,4 @@ echo "Applying PyTorch patches in $REPO_ROOT" cd "$REPO_ROOT" curl -sSL https://github.com/pytorch/pytorch/pull/126516.diff | git apply - +curl -sSL https://github.com/pytorch/pytorch/pull/142242.diff | git apply - From e9c620d51293cac21f514808e42f173df1a24d9d Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Sun, 8 Dec 2024 13:12:49 +0100 Subject: [PATCH 05/12] try changes from PR 2962 Signed-off-by: Anatoly Myachev --- .github/workflows/inductor-tests-reusable.yml | 4 ++-- scripts/patch-pytorch.sh | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/inductor-tests-reusable.yml b/.github/workflows/inductor-tests-reusable.yml index e929106652..6567fe4281 100644 --- a/.github/workflows/inductor-tests-reusable.yml +++ b/.github/workflows/inductor-tests-reusable.yml @@ -34,11 +34,11 @@ jobs: build: name: Test runs-on: - - ${{ inputs.runner_label || 'max1550' }} + - ${{ inputs.runner_label || 'rolling' }} timeout-minutes: 720 defaults: run: - shell: bash -noprofile --norc -eo pipefail -c "source /opt/intel/oneapi/setvars.sh > /dev/null; source {0}" + shell: bash -noprofile --norc -eo pipefail -c "source /opt/intel/oneapi/2025.0/oneapi-vars.sh > /dev/null; source {0}" steps: - name: Print inputs run: | diff --git a/scripts/patch-pytorch.sh b/scripts/patch-pytorch.sh index 5f4248b6d8..5e35d25441 100755 --- a/scripts/patch-pytorch.sh +++ b/scripts/patch-pytorch.sh @@ -16,4 +16,3 @@ echo "Applying PyTorch patches in $REPO_ROOT" cd "$REPO_ROOT" curl -sSL https://github.com/pytorch/pytorch/pull/126516.diff | git apply - -curl -sSL https://github.com/pytorch/pytorch/pull/142242.diff | git apply - From 35bf37a7e9ef8d43aa8935ba49f39d814f86869f Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 12:11:31 +0100 Subject: [PATCH 06/12] Update .github/pins/pytorch-upstream.txt --- .github/pins/pytorch-upstream.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 18f3d3ae5b..926e443124 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -61dc5e9c0a36d590adc47b4110efd94d9eb59306 +2d708752f034118b14bf5b7b3644eb684c5cc8cc From 6e3c80ba76585efd4bf157209aca828de6371b3d Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 13:32:45 +0100 Subject: [PATCH 07/12] use PyLong_AsUnsignedLongLong Signed-off-by: Anatoly Myachev --- benchmarks/triton_kernels_benchmark/benchmark_driver.py | 4 ++-- third_party/intel/backend/driver.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/benchmarks/triton_kernels_benchmark/benchmark_driver.py b/benchmarks/triton_kernels_benchmark/benchmark_driver.py index d9b55cc988..7ed1d5bce8 100644 --- a/benchmarks/triton_kernels_benchmark/benchmark_driver.py +++ b/benchmarks/triton_kernels_benchmark/benchmark_driver.py @@ -215,7 +215,7 @@ def format_of(ty): ptr_info.dev_ptr = 0; ptr_info.valid = true; if (PyLong_Check(obj)) {{ - ptr_info.dev_ptr = PyLong_AsVoidPtr(obj); + ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(obj); checkDevicePointer(&ptr_info, idx, queue); return ptr_info; }} @@ -234,7 +234,7 @@ def format_of(ty): ptr_info.valid = false; return ptr_info; }} - ptr_info.dev_ptr = PyLong_AsVoidPtr(ret); + ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(ret); if(!ptr_info.dev_ptr) {{ return ptr_info; }} diff --git a/third_party/intel/backend/driver.py b/third_party/intel/backend/driver.py index 9510e73b9c..90e1473fac 100644 --- a/third_party/intel/backend/driver.py +++ b/third_party/intel/backend/driver.py @@ -290,7 +290,7 @@ def format_of(ty): ptr_info.dev_ptr = 0; ptr_info.valid = true; if (PyLong_Check(obj)) {{ - ptr_info.dev_ptr = PyLong_AsVoidPtr(obj); + ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(obj); checkDevicePointer(&ptr_info, idx, queue); return ptr_info; }} @@ -309,7 +309,7 @@ def format_of(ty): ptr_info.valid = false; return ptr_info; }} - ptr_info.dev_ptr = PyLong_AsVoidPtr(ret); + ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(ret); if(!ptr_info.dev_ptr) {{ return ptr_info; }} From fc8cd2cabc085aaae1ebab125a7713e70bb99f49 Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 13:58:15 +0100 Subject: [PATCH 08/12] Revert "use PyLong_AsUnsignedLongLong" This reverts commit 6e3c80ba76585efd4bf157209aca828de6371b3d. --- benchmarks/triton_kernels_benchmark/benchmark_driver.py | 4 ++-- third_party/intel/backend/driver.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/benchmarks/triton_kernels_benchmark/benchmark_driver.py b/benchmarks/triton_kernels_benchmark/benchmark_driver.py index 7ed1d5bce8..d9b55cc988 100644 --- a/benchmarks/triton_kernels_benchmark/benchmark_driver.py +++ b/benchmarks/triton_kernels_benchmark/benchmark_driver.py @@ -215,7 +215,7 @@ def format_of(ty): ptr_info.dev_ptr = 0; ptr_info.valid = true; if (PyLong_Check(obj)) {{ - ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(obj); + ptr_info.dev_ptr = PyLong_AsVoidPtr(obj); checkDevicePointer(&ptr_info, idx, queue); return ptr_info; }} @@ -234,7 +234,7 @@ def format_of(ty): ptr_info.valid = false; return ptr_info; }} - ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(ret); + ptr_info.dev_ptr = PyLong_AsVoidPtr(ret); if(!ptr_info.dev_ptr) {{ return ptr_info; }} diff --git a/third_party/intel/backend/driver.py b/third_party/intel/backend/driver.py index 90e1473fac..9510e73b9c 100644 --- a/third_party/intel/backend/driver.py +++ b/third_party/intel/backend/driver.py @@ -290,7 +290,7 @@ def format_of(ty): ptr_info.dev_ptr = 0; ptr_info.valid = true; if (PyLong_Check(obj)) {{ - ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(obj); + ptr_info.dev_ptr = PyLong_AsVoidPtr(obj); checkDevicePointer(&ptr_info, idx, queue); return ptr_info; }} @@ -309,7 +309,7 @@ def format_of(ty): ptr_info.valid = false; return ptr_info; }} - ptr_info.dev_ptr = (void*) PyLong_AsUnsignedLongLong(ret); + ptr_info.dev_ptr = PyLong_AsVoidPtr(ret); if(!ptr_info.dev_ptr) {{ return ptr_info; }} From c13270defc876217b181c1ec9f8933f3dac2fc98 Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 14:07:36 +0100 Subject: [PATCH 09/12] REVERTME just test Signed-off-by: Anatoly Myachev --- .github/pins/pytorch-upstream.txt | 2 +- scripts/patch-pytorch.sh | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 926e443124..0067cc09fe 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -2d708752f034118b14bf5b7b3644eb684c5cc8cc +5ca75ac1dfb7e96fc8343538db8c222e7dcdb1f1 diff --git a/scripts/patch-pytorch.sh b/scripts/patch-pytorch.sh index 5e35d25441..c9dbf931ca 100755 --- a/scripts/patch-pytorch.sh +++ b/scripts/patch-pytorch.sh @@ -16,3 +16,4 @@ echo "Applying PyTorch patches in $REPO_ROOT" cd "$REPO_ROOT" curl -sSL https://github.com/pytorch/pytorch/pull/126516.diff | git apply - +curl -sSL https://github.com/pytorch/pytorch/pull/126456.diff | git apply - From 0d22d820cb4b70a635b2dc3abff250ffe34fd1ae Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 15:16:54 +0100 Subject: [PATCH 10/12] test commit which change tensor.data_ptr() behavior Signed-off-by: Anatoly Myachev --- .github/pins/pytorch-upstream.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 0067cc09fe..15e3bff4fd 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -5ca75ac1dfb7e96fc8343538db8c222e7dcdb1f1 +ac0b0d11abee93449672db1cee84975c787a27d4 From 4d27e941ecca3598e64f11f52c1ecc08156e627c Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 17:14:31 +0100 Subject: [PATCH 11/12] Revert "REVERTME just test" This reverts commit c13270defc876217b181c1ec9f8933f3dac2fc98. --- .github/pins/pytorch-upstream.txt | 2 +- scripts/patch-pytorch.sh | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/pins/pytorch-upstream.txt b/.github/pins/pytorch-upstream.txt index 15e3bff4fd..18f3d3ae5b 100644 --- a/.github/pins/pytorch-upstream.txt +++ b/.github/pins/pytorch-upstream.txt @@ -1 +1 @@ -ac0b0d11abee93449672db1cee84975c787a27d4 +61dc5e9c0a36d590adc47b4110efd94d9eb59306 diff --git a/scripts/patch-pytorch.sh b/scripts/patch-pytorch.sh index c9dbf931ca..5e35d25441 100755 --- a/scripts/patch-pytorch.sh +++ b/scripts/patch-pytorch.sh @@ -16,4 +16,3 @@ echo "Applying PyTorch patches in $REPO_ROOT" cd "$REPO_ROOT" curl -sSL https://github.com/pytorch/pytorch/pull/126516.diff | git apply - -curl -sSL https://github.com/pytorch/pytorch/pull/126456.diff | git apply - From 8472895edd382157667e56b0bb3ec3230520e031 Mon Sep 17 00:00:00 2001 From: Anatoly Myachev Date: Mon, 9 Dec 2024 19:05:20 +0000 Subject: [PATCH 12/12] specify 'dtype=torch.uint64' as a workaround Signed-off-by: Anatoly Myachev --- python/tutorials/08-grouped-gemm.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/python/tutorials/08-grouped-gemm.py b/python/tutorials/08-grouped-gemm.py index 8814187230..1b4e5a8d8a 100644 --- a/python/tutorials/08-grouped-gemm.py +++ b/python/tutorials/08-grouped-gemm.py @@ -170,9 +170,9 @@ def group_gemm_fn(group_A, group_B): g_lds += [A.stride(0), B.stride(0), C.stride(0)] # note these are device tensors - d_a_ptrs = torch.tensor(A_addrs, device=device) - d_b_ptrs = torch.tensor(B_addrs, device=device) - d_c_ptrs = torch.tensor(C_addrs, device=device) + d_a_ptrs = torch.tensor(A_addrs, device=device, dtype=torch.uint64) + d_b_ptrs = torch.tensor(B_addrs, device=device, dtype=torch.uint64) + d_c_ptrs = torch.tensor(C_addrs, device=device, dtype=torch.uint64) d_g_sizes = torch.tensor(g_sizes, dtype=torch.int32, device=device) d_g_lds = torch.tensor(g_lds, dtype=torch.int32, device=device) # we use a fixed number of CTA, and it's auto-tunable @@ -276,9 +276,9 @@ def benchmark(N, provider): g_sizes += [N, N, N] g_lds += [N, N, N] - d_a_ptrs = torch.tensor(A_addrs, device="xpu") - d_b_ptrs = torch.tensor(B_addrs, device="xpu") - d_c_ptrs = torch.tensor(C_addrs, device="xpu") + d_a_ptrs = torch.tensor(A_addrs, device="xpu", dtype=torch.uint64) + d_b_ptrs = torch.tensor(B_addrs, device="xpu", dtype=torch.uint64) + d_c_ptrs = torch.tensor(C_addrs, device="xpu", dtype=torch.uint64) d_g_sizes = torch.tensor(g_sizes, dtype=torch.int32, device="xpu") d_g_lds = torch.tensor(g_lds, dtype=torch.int32, device="xpu")