Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add Ascend sparse-attention prefill and decode examples with a fully manual pipeline and a persistent
T.Stagepipeline. The staged implementation uses compiler-managed versions and synchronization, native pair gathers, high-level QK/PV copies and GEMMs, and FP8/FP4 dequantization.QK and PV use two Buffer views of one four-version L0B allocation. Their MajorK and MajorMN layouts remain distinct while shared
.dataprovides one version clock and a 64 KiB ring withoutT.assume_conflict. This requires the Cube-view support in fork PR #11.This PR includes these compiler changes:
Remaining compiler prerequisites:
The placement prerequisite now supports UB, L1, L0A/L0B/L0C, and SS through
T.annotate_buffer_offsets, with an explicit fixed version count required for each placed buffer. The staged kernel still uses the earlierT.annotate_l1_offsetsAPI; integrating the new prerequisite also requires migrating that call and adding an explicit fixedq_l1version count on the prefetched-query path.The included performance records identify the historical integrated compiler. They are not measurements of this partially integrated branch.