Files
metin2-client/docs/XIAOMI8LITE-RENDER-ISOLATION-20260930.md

43 lines
2.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 小米 8 Lite 渲染分项测试(2026-09-30)
同一台 MI 8 Lite / Android 15 LineageOS 22.2 / Adreno 512 Vulkan 1.1.128。
Release 原生库、同一村庄、24 只怪物、相同相机,60% 场景分辨率、无 MSAA、30 FPS 上限。
每组丢弃第一个加载后采样窗口,取 6 个两秒窗口;最后重复基准。手机处于 USB 充电状态。
| 条件 | FPS 均值 | GPU ms 均值 | 每帧 3D 绘制次数 | 电池温度 |
| --- | ---: | ---: | ---: | ---: |
| 基准 | 4.88 | 205.3 | 225 | 35.0°C |
| 关闭地形绘制 | 15.45 | 64.7 | 100 | 35.0°C |
| 关闭角色及角色阴影 | 5.13 | 194.5 | 191 | 35.0°C |
| 关闭特效绘制 | 4.88 | 205.6 | 224 | 36.0°C |
| 关闭触控覆盖绘制 | 4.88 | 205.5 | 225 | 36.0°C |
| 关闭全部 3D 场景绘制 | 30.03 | 17.7 | 0 | 36.0°C |
| 重复基准 | 4.83 | 206.4 | 225 | 36.0°C |
关闭地形后帧率约为基准的 3.16 倍,GPU 耗时减少约 141 ms(69%);关闭角色仅带来小幅提升。
关闭特效和触控覆盖基本无变化,但静止场景没有密集技能特效,不能据此推断战斗特效成本。
关闭全部 3D 后达到 30 FPS 上限,证明这个测试下 UI/显示链路可以达到该目标,不代表完整游戏已达到 30 FPS。
重复基准与初始基准接近(帧率约低 1%),本轮未观察到随测试时间明显恶化的现象。
## 判断与下一步
优先针对地形路径分析:多层 splat 混合、重复覆盖、每块地形的绘制次数、纹理采样和通用固定功能着色器。
本轮是关闭绘制的定位实验,没有降低正式地形质量,也没有交付性能优化;正常启动全部绘制仍开启。
硬件性能和驱动均可能影响这条路径,结果不能单独证明第三方 ROM 有问题,也不能完全排除它。
驱动统计显示 Vulkan 加载失败次数为 0;这只证明加载成功,不证明着色器性能正常。
## GPU 调频证据限制
普通 shell 和应用 run-as 均被拒绝读取 kgsl GPU 频率/忙碌节点。
`adb root` 被系统拒绝,提示开发者选项未允许 root 调试;未修改该设置,ADB 仍是普通 shell。
因此未取得负载下 GPU 时钟,不能排除固定低频或调度问题;未执行原厂 ROM 的对照测试。
Thermal HAL 不可用,表中的温度是电池传感器,不是 GPU 温度。
## 复现与验证
测试开关 `--diagnostic-skip-render terrain|characters|effects|touch|scene` 仅关闭指定绘制,不改变角色更新或网络。
自动化工具:`python3 tools/perf/run_render_isolation.py build/qa/render-isolation`。
本轮 Android 构建通过,7 组均成功进入同一场景;截图确认各开关对应的绘制确实消失。
审计检查 0 错误。CSV、截图、内存快照及 summary.json 保存于 `build/qa/xiaomi8lite-isolation-20260930/`。
测试结束自动恢复正常登录入口。手机时钟与工作区日期相差一天,原始 CSV 保留设备时间。