Skip to content

fix(runtime): enable explicit FFTS synchronization on a2a3sim - #2733

Open
Little-oil wants to merge 1 commit into
hw-native-sys:mainfrom
Little-oil:fix/sim-ffts-runtime
Open

Little-oil wants to merge 1 commit into
hw-native-sys:mainfrom
Little-oil:fix/sim-ffts-runtime

Conversation

@Little-oil

Copy link
Copy Markdown
Contributor

Advance the runtime gitlink from 39ce891d to 72a8e627 so explicit FFTS sync_set/sync_wait kernels compile and execute on A2/A3 CPU simulation. This incorporates current runtime main and the counted-event simulator fix in hw-native-sys/simpler#2186. PTOAS stays at v0.60 and the runtime-owned PTO ISA pin stays at 5a4f74cb; PyPTO source is unchanged.

The update includes nine upstream runtime commits plus the FFTS fix. Merge after simpler #2186; update the gitlink if the merged runtime commit receives a different SHA.

Validation:

  • 19 focused PyPTO runtime-selection, ISA-resolution, and pinned-runtime ABI checks passed, with no skips.
  • Runtime unit suite: 2,248 passed, 24 skipped.
  • dspark CSA, HCA, SWA, allgather, and indexer simulator scripts passed their original goldens and tolerances.
  • CSA TP4 with sixteen start positions of 256 passed all seven output/state checks.

This resolves the simulator dependency failure seen in hw-native-sys/pypto-lib#1195. Validation here uses CPU simulation; native performance was not remeasured.

Advance the runtime gitlink from 39ce891d to 72a8e627, including nine
upstream runtime commits and the explicit A2/A3 FFTS simulator fix.
Generated sync_set/sync_wait kernels compile and execute with counted
cross-core events shared by separately loaded AIC and AIV libraries.

Keep PTOAS v0.60 and the runtime-owned PTO ISA pin at 5a4f74cb. No PyPTO
Python or C++ source changes are required.

Validate 19 runtime-selection, ISA-resolution, and pinned-runtime ABI
checks with no skips. The patched runtime also passes dspark CSA, HCA,
SWA, allgather, and indexer simulator goldens, plus CSA TP4 16x256 with
all seven output/state checks at the original tolerances.
@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 27 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 3cc43ec4-473f-4f7c-a97a-d47072220f29

📥 Commits

Reviewing files that changed from the base of the PR and between a9b9e0b and 41e63f0.

📒 Files selected for processing (1)
  • runtime

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Little-oil pushed a commit to Little-oil/pypto-lib that referenced this pull request Sep 10, 2026
- Bypass query scoring and sorting when the ratio-4 cache fits Top-K,
  retaining causal visibility, cache updates and the long-cache path.
- Read CSA gather payloads directly into typed consumers before epoch
  retirement, removing full packed buffers and separate unpack waves.
- Temporarily pin simulator CI to the FFTS-capable PyPTO dependency
  from hw-native-sys/pypto#2733 and hw-native-sys/simpler#2186; remove
  the pin when PyPTO main includes the fix.

TP4 CSA at 16x256 on a2a3: average minimum-rank median latency falls
1016.850 -> 880.275 us (13.43%). Average minimum-rank mean latency falls
1027.507 -> 923.736 us (10.10%). Use PYPTO_BENCH=1, swimlane0, 100 timed
rounds and 5 warmups, with all samples retained across AB/BA runs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant