Add functional test for 2D block lowering of tensor pointers.#3876
Add functional test for 2D block lowering of tensor pointers.#3876chengjunlu wants to merge 8 commits intomainfrom
Conversation
There was a problem hiding this comment.
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
Files not reviewed (1)
- third_party/intel/lib/TritonIntelGPUToLLVM/LoadStoreOpToLLVM.cpp: Language not supported
Comments suppressed due to low confidence (2)
python/test/unit/intel/test_block_load.py:25
- [nitpick] The string representation in the str method uses inconsistent spacing around '='. Consider standardizing the formatting for clarity in logging and debugging.
return f"#triton_intel_gpu.dpas<{ {repeatCount={self.repeatCount}, systolicDepth={self.systolic_depth}, executionSize = {self.execution_size}, opsPerChan = {self.ops_per_chan}, threadsPerWarp = {self.threads_per_warp}, warpsPerCTA={self.warps_per_cta}, repCluster={self.rep_cluster}}}>"
python/test/unit/intel/test_block_load.py:199
- There is a commented-out assertion intended to check for 2D block io support. Either uncomment and enable this assertion to validate the functionality or remove it to avoid confusion.
# assert '2d block io' in kernel.asm['llir']
| warps_per_cta=[8, 4], rep_cluster=[4, 2]), | ||
| DpasLayout(repeatCount=8, systolic_depth=8, execution_size=16, ops_per_chan=1, threads_per_warp=32, | ||
| warps_per_cta=[8, 4], rep_cluster=[1, 1]), | ||
| # Layout for Xe |
There was a problem hiding this comment.
| # Layout for Xe |
| if support_block_io: | ||
| # assert '2d block io' in kernel.asm['llir'] | ||
| pass |
There was a problem hiding this comment.
Why do we early exit when block io is supported?
There was a problem hiding this comment.
Right. Also, the temp file will be left behind and should be removed.
There was a problem hiding this comment.
The check is going to make sure the 2D block IO is used. It based on the SPIRV extension. Right now there are too many unsupported 2D block IO variant of OCL interface.
There was a problem hiding this comment.
icic, if we merge this PR before SPIRV extension is ready, then we probably want to remove line 199-201.
|
|
||
| @pytest.mark.parametrize("M, N", [[M, N] for M, N in itertools.product([32, 64, 128, 256], [32, 64, 128, 256])]) | ||
| @pytest.mark.parametrize("dtype_str", ["float32", "float16", "int8"]) | ||
| @pytest.mark.parametrize("layout", layouts) |
There was a problem hiding this comment.
should we check for the same dpas layouts for test_block_load_dpas_layout?
28e9720 to
c9022fc
Compare
c9022fc to
25e3a8b
Compare
…uctured memory. Fix segfault in LoadOpToBlockIOConversion Signed-off-by: Whitney Tsang <whitney.tsang@intel.com>
and old implementation)
|
@chengjunlu can we close this PR ? |
Add functional test for 2D block lowering of tensor pointers.