板上每幀 ms(RK3576 量測板)

2026-10-16 卡尺整理・WebView 157・鎖 30 FPS(一格 33.3 ms)・固定 benchmark 情境的 P6(6 席陀螺+15 隻怪+寶箱屬性+死靈法師+Boss+超級衝撞/星星/盜墓者+報獎,全部疊上去;不是真人實玩)・全部是板上實測 logcat 每幀紀錄

輕場 P1(只有陀螺+怪物)每幀間隔
33.4 ms
≈ 滿分 33.3,幾乎不漏格
最重場 每幀間隔(玩家看到)
36.6 ms
1b7dabbf8(最新)平均
最重場 背景畫一幀
26.0 ms
平常 24.7|超過 33 的幀 38.6
最重場 畫一幀超過 33 ms
9.2%
1090 幀中 100 幀・最慢 75 ms

為什麼會超過 33 ms:背景執行緒畫一幀的時間花在哪

平常的幀 vs 超過 33 ms 的幀(每段平均)

每一幀的分段(橫軸=第幾幀,可拖曳放大)

滑過圖看那一幀每段幾 ms

「特效同步」=粒子計算與特效狀態更新;「3D 繪製」=把 3D 場景送給 GPU(GPU 塞車時也算在這段);「怪物同步」=骨架動畫與位置;「2D/HUD 繪製」=文字、介面、報獎;「2D 指令重播」=主執行緒送來的 2D 指令在背景重畫;「其他同步」=陀螺、道具、地面等。

跟改之前比(每段平均,全部幀)

10/15 傍晚改之前(a7c792af8):怪物同步 5.3 ms、合計 27.2 ms、超過 33 ms 10.8%。
現在(1b7dabbf8):怪物同步 2.6 ms、合計 26.0 ms、超過 33 ms 9.2%。
看得出來的只有怪物同步省 2.7 ms(骨架改到第三條執行緒);合計與超過 33 ms 比例在雜訊內,量不到。

10/15 一天的進展:最重場平均每幀間隔(越低越好,33.3 = 滿分)

⚠️ 前兩欄每臂 19 秒、第三欄每臂 40 秒,條件不完全相同。看得出來的進步只有「鎖 30 改用半個刷新的容差」:45.9 → 38.3 ms。38.3 → 36.8 在雜訊內,量不到。

昨天(10/15)起改了什麼

commit時間改了什麼板上效果
2c6e0fc4e10/15 15:34之前的效能優化合進最新 main基底
76144fe5c10/15 15:01修:HUD 藏起來的數字不再被畫回、招牌不再偏移畫面修正
894ab95a810/15 16:23背景模式的 HUD 只送有變的部分未單獨量
af8cfd8d910/15 16:53熱測可用網址選開場模式量測工具
c7ba8aac810/15 17:05畫面跟螢幕刷新同步,機台鎖 30 FPS最重場每幀 45.9 ms(舊鎖法)
a5d663a5610/15 17:25修:背景模式技能字外的粉紅方框畫面修正
9720e448710/15 18:39鎖 30 改用半個刷新的容差最重場每幀 45.9 → 38.3 ms
a7c792af810/15 18:55背景執行緒每幀分段計時(量測用)量測工具
562c1ea05
60d7e2383
10/15 20:04怪物骨架改在第三條執行緒算(+測試)未單獨列
195ba256210/15 22:23背景執行緒少產生垃圾垃圾 15 → 11.7 MB/s;漏格量不到
dfc79c64610/15 23:10特效、怪物、字圖每幀少建暫存物件量不到
88e48396610/15 23:44特效名字與怪物狀態改用號碼傳給背景垃圾再 −0.85 MB/s;漏格量不到 · 板上 APK 是這版
1b7dabbf810/16 02:14特效更新少做幾件重複的計算量不到(27.0 vs 27.2 FPS)
2555e12d610/16 03:11量測用開關:指定特效整個不播(預設關)量測工具,畫面不變

以上全部在分支 feat/perf-main-20261015(已推上 GIT),還沒進 main。

剩下的漏格從哪來、怎麼辦