Fix: memset TMR payload/slab buffers before orch starts - #2165
Fix: memset TMR payload/slab buffers before orch starts#2165yanghaoran29 wants to merge 1 commit into
Conversation
Move cold first-touch of payload_per_core_/deferred_slab_per_core_ into pre_handshake_init so Orch→Sched start gap no longer absorbs round-1 page faults.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe A5 and a2a3 scheduler paths now first-touch and zero live per-core dispatch buffers during ChangesScheduler buffer initialization
Priority: ⬇️ Low — Defer the scheduler first-touch optimization because it is a narrow cold-path performance change with no supplied customer or external urgency evidence. Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change moves first-touch buffer initialization ahead of scheduler handoff to remove cold-start latency without changing the later dispatch lifecycle. No merge-blocking risk is currently identified. 🚥 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. I twitch my nose at buffers bright Comment |
d9e25af to
5b3ef1d
Compare
Summary
memsetof livepayload_per_core_/deferred_slab_per_core_rows into TMRpre_handshake_init(A5 + a2a3), still before peers observehs_setup_done_, so Orch can start without paying round-1 page-fault cost inside the Orch→Sched window.assign_own_clustersstill rewires fields on already-resident pages;deinitcomments updated to match.Test plan
vector_examplefor 3 rounds undertask-submitwith device-wall STRACE enabled; compare against a cleanmainbuild of the same case.SchedWindow.start − OrchWindow.startshould collapse toward round-2+ levels (cold cost moves into setup before orch, not the Orch→Sched gap).--rounds 3(clean main vs this change): round-1 gap ~256 µs → ~0.6 µs; round-2+ gap stays on the order of a few µs (warm path; small flips vs Sched post-handshake race are expected once pages are resident).