Skip to content

[DeviceSanitizer] Add ASAN interception for SPIRV 2D block load/store#22041

Open
zhaomaosu wants to merge 3 commits into
intel:syclfrom
zhaomaosu:san-spirv-sg2d-io
Open

[DeviceSanitizer] Add ASAN interception for SPIRV 2D block load/store#22041
zhaomaosu wants to merge 3 commits into
intel:syclfrom
zhaomaosu:san-spirv-sg2d-io

Conversation

@zhaomaosu
Copy link
Copy Markdown
Contributor

Intercept __spirv_Subgroup2DBlockLoadINTEL and
__spirv_Subgroup2DBlockStoreINTEL to detect out-of-bounds accesses from Intel Xe 2D block I/O operations used by CuTe/CUTLASS GEMM kernels.

The ASAN pass inserts a check call before each 2D block operation, validating both the register buffer (dst/src pointer) and the surface memory (row-by-row, accounting for pitch stride). The check runs only on the subgroup leader since 2D block I/O is a collective operation.

Intercept __spirv_Subgroup2DBlockLoadINTEL and
__spirv_Subgroup2DBlockStoreINTEL to detect out-of-bounds accesses from
Intel Xe 2D block I/O operations used by CuTe/CUTLASS GEMM kernels.

The ASAN pass inserts a check call before each 2D block operation,
validating both the register buffer (dst/src pointer) and the surface
memory (row-by-row, accounting for pitch stride). The check runs only
on the subgroup leader since 2D block I/O is a collective operation.
@zhaomaosu zhaomaosu requested a review from a team as a code owner May 18, 2026 05:33
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.

1 participant