Repository navigation
Fix: skip unused task-timing tail readback - #1707
ChaoZheng109 merged 1 commit into
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughThe device phase buffer now contains a header, phase records, and an optional task-timing tail. AICPU cleanup publishes tail usage. Host runners read the tail only when the header indicates dispatched task timing data. ChangesTask-timing tail readback
Estimated code review effort: 3 (Moderate) | ~25 minutes Sequence Diagram(s)sequenceDiagram
participant AICPUExecutor
participant DevicePhaseBuffer
participant HostDeviceRunner
AICPUExecutor->>DevicePhaseBuffer: Publish task-timing tail usage
HostDeviceRunner->>DevicePhaseBuffer: Read header and phase prefix
HostDeviceRunner->>DevicePhaseBuffer: Read tail when usage is set
HostDeviceRunner->>HostDeviceRunner: Resolve task-timing records
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
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. Comment |
d144004 to
61be4dc
Compare
- Add a fixed buffer header and publish tail usage from the last AICPU thread at the existing completion gates. - Read back the header and phase prefix first; copy and resolve the optional tail only when a tagged task was dispatched. - Use typed POD storage across onboard and both simulators to preserve the layout without violating C++17 object-lifetime rules. - Cover layout, reset, and incomplete dispatch, and directly verify an unused header never invokes the tail read. Refs hw-native-sys#1656
61be4dc to
3f1847e
Compare
Summary
was dispatched from the last AICPU thread at the existing completion gate.
task-timing tail D2H copy when no task was tagged.
with direct tests for the no-tail-read path and the wire layout.
document the split readback layout.
Testing
npu-smireturned empty Chip/NPU names)Fixes #1656