Skip to content

[SIMT][OPT] Add persistent SIMT fragment materialization - #978

Open
KurrinQu wants to merge 3 commits into
hw-native-sys:mainfrom
KurrinQu:qkl/ptoas-persistent-simt-fragment-design
Open

[SIMT][OPT] Add persistent SIMT fragment materialization#978
KurrinQu wants to merge 3 commits into
hw-native-sys:mainfrom
KurrinQu:qkl/ptoas-persistent-simt-fragment-design

Conversation

@KurrinQu

Copy link
Copy Markdown
Collaborator

Summary

Add PTOAS support for keeping SIMT fragment values in dedicated register
slots across multiple inline SIMT sections.

The transformation replaces repeated UB-to-register loads with explicit
pto.keep / pto.resume traffic while preserving the existing VPTO lowering
and outlining flow.

Changes

  • Add a read-only persistent-fragment analysis pass.
  • Add the persistent-fragment materialization pass.
  • Keep inline SIMT sections until persistent-fragment materialization completes,
    then outline them into pto.simt_entry helpers and pto.simt_launch calls.
  • Add positive and negative lit coverage for access normalization, slot
    assignment, vector accesses, control-flow contracts, invalid offsets,
    launch-dimension mismatches, and slot-budget violations.

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@KurrinQu
KurrinQu force-pushed the qkl/ptoas-persistent-simt-fragment-design branch 4 times, most recently from ac8fe5f to 1948788 Compare July 23, 2026 18:28
@KurrinQu
KurrinQu marked this pull request as draft July 27, 2026 06:46
@KurrinQu
KurrinQu force-pushed the qkl/ptoas-persistent-simt-fragment-design branch from fd87824 to c803995 Compare July 30, 2026 13:23
@KurrinQu
KurrinQu marked this pull request as ready for review July 30, 2026 17:25
@KurrinQu
KurrinQu force-pushed the qkl/ptoas-persistent-simt-fragment-design branch 2 times, most recently from 64dca72 to 1cd1ff9 Compare July 31, 2026 06:52
@KurrinQu
KurrinQu force-pushed the qkl/ptoas-persistent-simt-fragment-design branch from 1cd1ff9 to aaf7120 Compare July 31, 2026 09:47
@KurrinQu
KurrinQu force-pushed the qkl/ptoas-persistent-simt-fragment-design branch from aaf7120 to 57a9a0c Compare July 31, 2026 16: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