Skip to content

[MatmulLoopPipeline] Predicate PrefetchOp#4016

Merged
whitneywhtsang merged 7 commits intomainfrom
whitneywhtsang/prefetch_pipeline
Apr 26, 2025
Merged

[MatmulLoopPipeline] Predicate PrefetchOp#4016
whitneywhtsang merged 7 commits intomainfrom
whitneywhtsang/prefetch_pipeline

Conversation

@whitneywhtsang
Copy link
Copy Markdown
Contributor

@whitneywhtsang whitneywhtsang commented Apr 25, 2025

Now that PrefetchOp takes mask as an argument, we can handle predication of PrefetchOp in MatmulLoopPipeline.
Benchmark CI: https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/14657236822 (No performance regressions.)

Note: this change comes partially from #3634.

@whitneywhtsang whitneywhtsang self-assigned this Apr 25, 2025
Location loc = pred.getLoc();
Value mask = pred;
Type maskType = tt::getI1SameShape(typeLike);
Type maskType = tt::getI1SameShape(tt::getPointeeType(typeLike));
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does typeLike means ? Lets document the parameters this function take and also what it does.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added function description.

@whitneywhtsang whitneywhtsang force-pushed the whitneywhtsang/prefetch_pipeline branch from 3fd9a80 to 6c7a802 Compare April 25, 2025 05:02
Location loc = pred.getLoc();
Value mask = pred;
Type maskType = tt::getI1SameShape(typeLike);
Type maskType = tt::getI1SameShape(tt::getPointeeType(typeLike));
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does typeLike means ? Lets document the parameters this function take and also what it does.

Comment thread third_party/intel/lib/TritonIntelGPUTransforms/Pipeliner/MatmulLoopPipeline.cpp Outdated
Comment thread test/TritonIntelGPU/loop-pipeline.mlir
Signed-off-by: Whitney Tsang <whitney.tsang@intel.com>
Signed-off-by: Whitney Tsang <whitney.tsang@intel.com>
@whitneywhtsang whitneywhtsang force-pushed the whitneywhtsang/prefetch_pipeline branch 2 times, most recently from 88fe8be to a4b2e2a Compare April 25, 2025 15:15
Signed-off-by: Whitney Tsang <whitney.tsang@intel.com>
@whitneywhtsang whitneywhtsang force-pushed the whitneywhtsang/prefetch_pipeline branch from a4b2e2a to cc4150d Compare April 25, 2025 15:19
@whitneywhtsang whitneywhtsang marked this pull request as ready for review April 25, 2025 15:19
@whitneywhtsang whitneywhtsang requested review from a team and alexbaden April 25, 2025 15:20
Base automatically changed from whitneywhtsang/prefetch_mask to main April 25, 2025 15:25
@whitneywhtsang whitneywhtsang requested a review from etiotto April 25, 2025 15:26
Comment thread test/TritonIntelGPU/loop-pipeline.mlir
Signed-off-by: Whitney Tsang <whitney.tsang@intel.com>
@whitneywhtsang whitneywhtsang enabled auto-merge (squash) April 26, 2025 19:13
@whitneywhtsang whitneywhtsang merged commit 8aba8cb into main Apr 26, 2025
14 of 16 checks passed
@whitneywhtsang whitneywhtsang deleted the whitneywhtsang/prefetch_pipeline branch April 26, 2025 21:49
@etiotto etiotto linked an issue May 2, 2025 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Performance] Enable prefetching for tt.load with tensor of pointer

4 participants