diff --git a/tools/perf/fx-telem-2026-07-11.md b/tools/perf/fx-telem-2026-07-11.md index 4ea8d1c04b..04b828a633 100644 --- a/tools/perf/fx-telem-2026-07-11.md +++ b/tools/perf/fx-telem-2026-07-11.md @@ -50,6 +50,113 @@ Retroid Pocket Flip2 (SD865-class) — `root@192.168.4.42`, deployed via 4. Collect per title: `ssh root@192.168.4.42 'grep JITTELEM /storage/.config/YAPS2/logs/emulog.txt'` — the emulog restarts per launch, so grab (or let Claude grab) after each title. +## Title results + +### Baldur's Gate: Dark Alliance (user session, 463s, clean shutdown) + +- **SMC: real-SMC is ZERO** (0 seqs ever emitted). The entire manual tax is + the `contains_thread_stack` heuristic class: the SAME 23 seqs / 207 words + as SotC (kernel 0x81/0x80001 pages — universal, game-independent), + running 2.0–2.7M w/s sustained; session totals 101M checks / 996M words + (avg 2.15M w/s, 9.9 words/check) ≈ ~18M insns/s ≈ ~0.6% of an A77. + **Reframe for FX-03**: these blocks are excluded from manual_counter + promotion so they re-check forever — the fix menu includes handling the + ts class specifically (promotion/narrower checks), not just NEON widening. +- **brshape**: 12,888 blocks | fwd-cond 50.8% | FUSABLE plain 6.9% + + likely 0.8% + diamond 41 | killers: ctrl 1702, sys 11, xpage 7. + Nearly identical shape to SotC — fusable share looks like a ~7% cross-title + constant. +- **alloc**: EE live-evict 1 (noise), IOP 0, ee-neon LIVE 5, mVU VF 16/3925 + (0.4%), VI 180. Second real-workload nil. + +Raw log archived in the session scratchpad (`fx-telem-logs/bgda-2310.emulog.txt`). + +### R&C Up Your Arsenal (user session, 349s, clean shutdown) + +- **SMC: negligible on this title.** Real-SMC bursty 0–0.024M w/s (592k + checks / 3.06M words total; 3,143 seqs / 19k words EMITTED — plenty of + manual pages get compiled, they're just cold). ts class only 0.05M w/s + (110 seqs — a bigger set than BG:DA/SotC's 23, but ~40× colder). + Combined ≈ 0.02% of an A77. **Key insight: the ts block SET is + universal but its RATE is not** — it tracks kernel/scheduler pressure + (BG:DA 2.4M w/s, SotC ~0.3–1M, UYA 0.05M). +- **brshape**: 42,555 blocks | fwd-cond 43.9% | FUSABLE plain 4.5% + + likely 0.7% + diamond 75. Cross-title fusable range now 4.5–7.7%. +- **alloc**: EE 0, IOP 0, ee-neon LIVE 0, mVU VF 116/31,829 (0.36%), + VI 1,477. Third real-workload nil. + +Raw log: `fx-telem-logs/uya-*.emulog.txt` (session scratchpad). + +### Shadow of the Colossus (user session, 576s incl. boss battle, clean shutdown) + +- **SMC**: the one title so far with REAL manual-SMC execution — steady + 0.15–0.18M w/s (totals 23.4M checks / 123.5M words, avg 0.21M w/s over + 3,338 seqs, 5.3 words/check) + ts steady 0.33M w/s (104 seqs / 805 + words, 10.8 words/check). Combined ≈ 0.54M w/s ≈ 0.14% of an A77. +- **brshape**: 59,178 blocks | fwd-cond 47.5% | FUSABLE plain 7.6% + + likely 0.9% + diamond 73 — confirms the smoke. +- **alloc**: EE 1, IOP 0, ee-neon LIVE 0, mVU VF 51/10,031 (0.5%), VI 233. + +### Burnout 3: Takedown (user session, 616s, clean shutdown) + +- **SMC: mild** — the WaitLoop-history title is NOT SMC-hot at runtime: + real-SMC 120 seqs / 1,205 words emitted, avg 0.011M w/s; ts 0.096M w/s. + Combined 0.107M w/s ≈ 0.03% of an A77. +- **brshape**: 50,207 blocks | fwd-cond 46.3% | FUSABLE plain 5.4% + + likely 0.1% (B3 barely uses branch-likely) | its >32 bucket is the + largest of any title (8,070). +- **alloc**: EE 0, IOP 0, ee-neon LIVE 3, mVU VF 265/74,408 (0.36%, + 94 dirty), VI 1,838 — heaviest mVU workload yet, same ~0.4% VF rate. + +### Katamari Damacy (user session, 102s, clean shutdown — ran ON the FX-03a binary) + +- **SMC: real-SMC ZERO** (0 seqs ever emitted); ts class steady 0.88–1.02M + w/s (totals 9.41M checks / 75.7M words, avg 0.89M w/s, 8.0 words/check) — + 2nd-highest ts rate after BG:DA. On the FX-03a emission (~1.3 insns/word) + that's ~1.2M insns/s ≈ **0.04% of an A77** — confirmation the fix landed + where it matters on a second heavy-ts title. +- **brshape**: 10,920 blocks | fwd-cond 39.9% | FUSABLE plain 5.1% + + likely 0.7% + diamond 25 | killers: ctrl 1,415, sys 43, xpage 7. +- **alloc**: EE 0, IOP 0, ee-neon LIVE 0, mVU VF 417/25,464 (1.6%, + 63 dirty), VI 2,161. Fifth real-workload nil on every EE/IOP channel. + +### FX-03 five-title table (avg session words/s) + +| title | real-SMC | ts (kernel pages) | combined | % of one A77 (@7 insn/word, pre-FX-03a) | +|---|---|---|---|---| +| BG:DA | 0 | 2.15M | 2.15M | ~0.6% | +| Katamari | 0 | 0.89M | 0.89M | ~0.25% | +| SotC | 0.21M | 0.33M | 0.54M | ~0.14% | +| Burnout 3 | 0.011M | 0.096M | 0.11M | ~0.03% | +| UYA | 0.009M | 0.05M | 0.06M | ~0.02% | + +Only BG:DA clears the 1M-w/s bar, and it does so ENTIRELY via the +contains_thread_stack heuristic class. FX-03a (618fe597c) cut the per-word +cost ~6× for all rows; BG:DA re-run and the Katamari row above are on the +new emission. + +Raw logs: `fx-telem-logs/*.emulog.txt` (session scratchpad). + +## Campaign verdicts (2026-07-12 eval) + +- **FX-03 → applied** (618fe597c, FX-03a): reframed from "NEON-widen for + SMC-heavy titles" to "kernel-page heuristic tax"; hoisted-base Ldp/Ccmp + chain took it from ~7–9 to ~1.3 insns/word. User-validated on BG:DA + (behaviorally transparent, 0 discards) and Katamari. +- **FX-16 → wontfix**: static fusable pool thin (plain 4.5–7.7%, diamond + ~0) and the per-site saving collapsed — pins ride through tails, short + blocks already skip the event check, EE dynamic-allocator state at tails + is near-empty. Est. 0.05–0.3% of EE-thread insns vs high emitter + complexity. Reopen only if RK3562 becomes binding AND an exec-weighted + counter shows fusable sites disproportionately hot. +- **FX-07 → wontfix**: eviction never fires in real workloads (EE 0–1, + IOP 0, NEON LIVE 0–5 across five titles); mVU VF 0.36–1.6% with tiny + dirty subset, not worth an ABI bump. Footnote: VI is the only churning + channel (5–7× VF) — future mVU perf work should look at VI pool sizing, + not eviction policy. +- **FX-15 → pending iTLB A/B** (same binary, `YAPS2_NO_THP=1` toggle, + fan pinned). + ## Smoke result (SotC gameplay savestate, 75s, 2026-07-11) **FX-03 bar MET on the first title**: sustained 0.78–1.49M manual words/s