vdi-cloud/docs/ubuntu-deep-latency-20261105.md

21 lines
2.4 KiB
Markdown
Raw 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.

# Ubuntu 交互响应深度调优(2026-11-05)
本轮只改 Ubuntu VM102。保留 2560×1440、原生 Ubuntu 光标、30Mbps H.264 和 RKMPP/EGL 客户端;Windows、麒麟和 NVIDIA 直通没有改动。
现场启用了 KMS 捕获与原生独立光标的组合:Sunshine 使用 `/dev/dri/card1` 的 virtio_gpu atomic primary scanout,客户端继续通过已验证的原生光标通道同步形状、热点和位置。KMS 守护校验唯一 primary plane、`CRTC_W/CRTC_H=2560×1440`、驱动名 `virtio_gpu`,不请求 cursor hotspot plane,因此不会把第二个光标编码进视频。virtio atomic 客户端的 legacy `crtc_id/fb_id` 保持为 0,守护不再把这两个无效字段当作活动状态;真实捕获由 Sunshine 自己完成。
对比结果(60Hz XTest 注入,读解码视频中的唯一编号;不含物理 USB、网络之外的面板扫描,也不等于本地箭头延迟):
| 场景 | KMS 45FPS | X11 45FPS |
| --- | ---: | ---: |
| 长按框选回显 P50 / P95 | 195.9 / 246.6ms | 250.1 / 311.5ms |
| 视频中可见新编号更新 | 16.0/s | 10.6/s |
| 实际按钮点击回显 P50 / P95 | 约 304 / 378ms | — |
| masked 输入字符回显 P50 / P95 | 约 165 / 182ms | — |
28 次点击的编号、位置和释放均通过;7 种原生光标形状/显隐的几何和像素最大差为 0,视频背景没有混入指针。KMS 与原生光标的正常退出、空闲后重连、守护进程被强制结束后的 X11 恢复、再次重连均通过。证据在 `docs/evidence/ubuntu-deep-latency-20261105/`,包括 `drag-kms-native45.json`、`drag-x11-native45.json`、`response-kms-async.json`、`cursor-kms-native45.json` 和 `kms-lifecycle.json`。
45FPS 请求只带来有限收益;软件编码 `min_threads=4` 的回显中位数约 197ms、尾部变差,已撤回。失败的 VirGL 硬编码和异步通知实验也没有留在运行环境。最终当前会话保持 KMS + 原生光标;Sunshine 配置仍是软件编码,未宣称已达到 Windows 的约 90ms 或“零延迟”。真实业务应用的后端认证没有写入测试数据;本轮只对实际 GTK 按钮、masked entry 和合成提交做了定量,未把合成提交冒充真实登录成功。
当前剩余瓶颈是 VM102 的 X11/virtio 读回和宿主 CPU 软件编码。要进一步接近 Windows,需要可用的 Linux 硬件编码/低开销捕获路径或更高性能 GPU;不能靠继续加快本地箭头、盲目提高 FPS 或修改鼠标主题解决。