3. FPS 与刷新率基础:帧率与显示刷新率的区别与联系

在显示性能调优中,FPS(帧率)与刷新率(Hz)是最基础但最容易被混淆的两个概念。它们分别描述了图形生成端与显示端的工作节奏,两者的匹配程度直接决定了用户视觉体验的流畅度与舒适度。本节将从定义、差异、协同关系以及用户体验影响四个维度进行深入剖析。

3.1 核心概念定义

术语 全称 定义 单位 测量端
FPS Frames Per Second 图形处理器(GPU/CPU)每秒能够渲染并提交的完整帧图像数量 帧/秒 渲染端(GPU/CPU)
刷新率 Refresh Rate 显示面板每秒能够刷新(重绘)画面的次数 Hz 显示端(面板/驱动板)
关键区分:FPS 衡量的是“生产速度”,刷新率衡量的是“消费速度”。两者在时间轴上独立运行,但最终在显示扫描输出时交汇。

3.2 FPS 与刷新率的区别

尽管 FPS 与刷新率在数值上可能相同,但它们的物理意义、影响因素以及优化手段完全不同。以下从四个维度进行对比:

  • 产生主体不同:FPS 由 GPU 渲染能力、CPU 提交效率、内存带宽以及驱动调度共同决定;刷新率由显示面板的物理特性(如 LCD 响应时间、OLED 像素充电速度)和驱动板时序控制器(TCON)决定。
  • 稳定性特征不同:FPS 是动态变化的,受场景复杂度、负载波动影响极大;刷新率通常是固定的(如 60Hz、120Hz),除非启用可变刷新率(VRR)技术。
  • 优化目标不同:FPS 优化追求“更高、更稳”;刷新率优化追求“面板极限、低抖动”。
  • 对延迟的影响路径不同:FPS 影响输入到渲染的延迟(Pipeline 延迟);刷新率影响渲染到显示的呈现延迟(Display Latency)。
调优启示:在 RK3399 平台上,FPS 瓶颈通常出现在 GPU Mali-T860 的渲染能力或 VPU 的解码能力上;而刷新率瓶颈则与 MIPI DSI 接口带宽、TCON 配置以及面板驱动 IC 的响应速度相关。两者需要独立分析,再联合调优。

3.3 FPS 与刷新率的联系:同步机制

FPS 与刷新率通过显示驱动中的同步机制产生联系。最常见的同步模式有三种:

  1. 垂直同步(VSync On):强制 FPS 与刷新率对齐。渲染完成一帧后,等待下一个 VBlank 信号才进行 Buffer Swap。优点是无撕裂;缺点是当 FPS 低于刷新率时,会出现重复帧,导致卡顿感。
  2. 关闭垂直同步(VSync Off):渲染完成后立即提交,不与刷新率同步。优点是延迟最低;缺点是可能产生画面撕裂(Tearing)。
  3. 自适应同步(Adaptive Sync / VRR):显示面板动态调整刷新率以匹配当前 FPS。优点是既无撕裂也无卡顿;缺点是需要面板和驱动同时支持。
RK3399 平台注意:RK3399 的 DRM/KMS 驱动默认启用 VSync 机制。在调优低帧率场景(如 30FPS 游戏)时,如果刷新率固定为 60Hz,每帧会被重复显示 2 次,导致视觉上的微卡顿。此时可考虑使用 DRM 的 ADAPTIVE_SYNC 属性或调整面板刷新率到 30Hz 来匹配。

3.4 FPS 与刷新率对用户体验的影响

用户体验的流畅度由 FPS 与刷新率的匹配关系决定,而非单一数值。以下通过一个 SVG 流程图展示不同匹配场景下的用户体验状态:

FPS 与刷新率匹配关系对用户体验的影响 FPS 与刷新率匹配关系对用户体验的影响 FPS(渲染端) 刷新率(显示端) 匹配 关系 FPS == 刷新率 完美同步 FPS > 刷新率 画面撕裂 FPS < 刷新率 重复帧卡顿 极致流畅 视觉撕裂 微卡顿/抖动 💡 用户体验核心公式: 流畅度 = min(FPS, 刷新率) - |FPS - 刷新率| × 抖动系数 当 FPS 与刷新率差距越大,视觉体验下降越明显。

3.5 典型场景分析

场景 FPS 刷新率 同步模式 用户体验 RK3399 调优建议
静态桌面 60 60Hz VSync On 完美流畅 保持默认,无需干预
轻量游戏 45 60Hz VSync On 微卡顿(每3帧重复1次) 尝试关闭 VSync 或降低刷新率到 30Hz
重度游戏 30 60Hz VSync On 明显卡顿(每帧重复2次) 强制面板切换 30Hz 模式,或启用 Triple Buffer
视频播放 24 60Hz VSync On 3:2 pulldown 抖动 使用 DRM 的 VARIABLE_REFRESH 属性匹配 24Hz
高帧率场景 90 60Hz VSync Off 画面撕裂 启用 Mali T860 的 AFBC 压缩降低带宽,或限制 FPS 到 60

3.6 延迟视角下的 FPS 与刷新率

从端到端延迟的角度看,FPS 与刷新率分别贡献了不同的延迟分量:

  • 渲染延迟(Render Latency):由 FPS 决定。FPS 为 60 时,每帧渲染耗时约 16.67ms;FPS 为 30 时,每帧渲染耗时约 33.33ms。渲染延迟 = 1 / FPS × 1000 (ms)。
  • 显示延迟(Display Latency):由刷新率决定。60Hz 刷新率下,从 Buffer Swap 到像素实际点亮,最大等待时间为 16.67ms(取决于 VBlank 相位)。
  • 总延迟 = 渲染延迟 + 显示延迟 + 输入延迟。
调优关键:在 RK3399 上,当 FPS 无法提升时(例如 GPU 已满载),降低刷新率反而能减少显示延迟。例如将 60Hz 面板切换到 30Hz,虽然 FPS 仍为 30,但显示延迟从平均 8.33ms 降低到 16.67ms?注意:这里存在一个常见误区——降低刷新率会增加显示延迟(因为每帧的显示周期变长)。正确的做法是:如果 FPS 稳定在 30,使用 30Hz 刷新率可以消除重复帧,减少视觉卡顿,但显示延迟确实会从 60Hz 下的平均 8.33ms 增加到 30Hz 下的平均 16.67ms。这是一个流畅度与延迟的权衡,需要根据具体应用场景选择。

3.7 本章小结

  • FPS 与刷新率是两套独立的时钟系统,分别由 GPU 渲染能力和面板物理特性决定。
  • 同步机制是连接两者的桥梁,VSync On/Off/Adaptive Sync 各有优劣。
  • 用户体验由匹配关系决定:FPS == 刷新率时最佳;FPS > 刷新率导致撕裂;FPS < 刷新率导致重复帧卡顿。
  • 延迟分析需区分渲染延迟与显示延迟,调优时需根据应用场景在流畅度与延迟之间做权衡。
  • RK3399 平台调优要点:利用 DRM 的 ADAPTIVE_SYNC 和 VARIABLE_REFRESH 属性,结合 Mali T860 的渲染能力,动态匹配最佳刷新率。