首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >从帧率到帧时间:用游戏加加给游戏性能做一次“心电图”

从帧率到帧时间:用游戏加加给游戏性能做一次“心电图”

原创
作者头像
PC电脑医生
发布2026-07-07 11:04:14
发布2026-07-07 11:04:14
170
举报

摘要:帧率高不等于不卡。本文从帧生成时间(Frametime)的底层原理出发,介绍如何使用游戏加加捕获帧时间数据,通过曲线分析定位CPU瓶颈与GPU瓶颈,解读1% Low FPS的真实含义,并提供一套可复现的游戏性能诊断流程。全文不涉及超频、不推荐硬件,仅聚焦数据分析方法。


一、一个问题:帧率 120,为什么画面还是卡?

打游戏时,左上角的FPS计数器显示120帧,数字很好看,但画面就是有一种说不出的「不跟手」和「顿挫感」。这种感知不一致,根本原因在于:平均帧率掩盖了帧时间的波动

帧率(FPS)是一秒内渲染帧数的平均值。假设某一秒内,前900毫秒渲染了10帧(每帧90ms),后100毫秒突然渲了110帧(每帧不到1ms)——平均FPS仍然是120,但前900毫秒的体验是「幻灯片」,后100毫秒的流畅毫无意义。

FPS是一个「统计数字」,而帧时间(Frametime)才是玩家的真实体感


二、帧时间是什么,为什么比帧率更重要

帧时间指GPU渲染单帧所耗费的时间,单位是毫秒(ms)。它与帧率的换算关系为:

理想帧时间 = 1000 ÷ 目标帧率

目标帧率

理想帧时间

超时判定线

60 FPS

16.67 ms

16.7ms 开始丢帧感

144 FPS

6.94 ms

10ms 感知到微卡顿

240 FPS

4.17 ms

6ms 电竞场景可察觉

关键不在于帧时间的绝对值高低,而在于帧时间的方差——即每帧之间的时间间隔是否稳定。专业测试中,通常用帧时间曲线图和P99/P99.9分位数来量化这种稳定性。

业界引进了两个衍生指标:

  • 1% Low FPS:将所有帧按帧时间排序,取最慢的1%帧对应的帧率。它反映「大多数卡顿的严重程度」。
  • 0.1% Low FPS:取最慢的0.1%帧对应的帧率。它反映「极端卡顿尖峰的严重程度」。

举个例子:某游戏平均FPS 90,但1% Low FPS只有35——意味着平均每100帧中就有1帧的渲染时间接近28.6ms,这种间歇性掉帧在快速转动视角时尤为明显。


三、工具准备:配置游戏加加的帧时间采集

游戏加加提供实时硬件监控面板,但默认显示的是瞬时FPS而非帧时间。需要调整配置以捕获可用于诊断的数据。

配置步骤

  1. 安装后启动游戏加加,进入「硬件监控」→「游戏内监控」。
  2. 勾选以下监控项(诊断的基本数据集):
    • FPS
    • 帧生成时间(部分版本需在高级设置中开启)
    • GPU使用率
    • GPU温度
    • CPU使用率(按核心显示)
    • CPU温度
    • 显存占用
    • 内存占用
  3. 「监控刷新周期」设为 500ms——过快的刷新率(100ms)会增加软件自身的CPU开销,干扰数据准确性。
  4. 开启「性能日志记录」,格式选 CSV,保存路径设置为便于查找的目录。

注意:部分游戏使用反作弊系统(EasyAntiCheat、BattlEye等),需要在游戏加加中手动将对应游戏加入白名单,或使用「兼容模式」注入。如果游戏启动后OSD不显示,先检查此项。


四、实战:采集并分析一次帧时间数据

以下以《永劫无间》为例,演示完整的采集-分析流程。

Step 1:选择测试场景

选择游戏内固定的测试场景,而非随机匹配。推荐在「自由练习」模式中,沿固定路线跑动并释放技能,重复三次,取数据最稳定的一次。避免用实际对局数据——变量太多,无法归因。

Step 2:记录数据

启动游戏加加的日志记录功能(默认快捷键 Ctrl+F11),运行测试场景 3-5 分钟后停止记录。

Step 3:打开CSV日志

日志文件位于游戏加加安装目录下的 Logs 文件夹,文件名包含日期时间戳。用 Excel 或 WPS 打开后,核心关注以下列:

代码语言:纯文本语言
复制
Time(s), FPS, GPU_Usage(%), GPU_Temp(°C), CPU_Usage(%), CPU_Temp(°C), RAM_Usage(MB), VRAM_Usage(MB)

Step 4:计算帧时间并绘制曲线

在Excel中新建一列,输入公式 =1000/FPS所在列,得到每帧的渲染时间(ms)。以时间为横轴、帧时间为纵轴,插入折线图。

解读曲线时的三个信号:

  • 平稳曲线(波动 < 3ms):帧时间稳定,游戏流畅。
  • 周期性尖峰(每隔固定时间出现 > 30ms 的波峰):通常是后台进程定时抢占CPU(杀毒软件扫描、系统更新服务),或着色器编译延迟。
  • 场景切换大波峰(进入新地图/爆炸特效时 > 50ms):GPU瞬时负载过高,显存带宽不足或纹理加载延迟。

五、瓶颈定位:CPU受限 vs GPU受限

「我的配置瓶颈在CPU还是显卡?」帧时间数据可以直接回答。

判断规则

现象

结论

GPU使用率持续 > 95%,CPU使用率 < 60%

GPU瓶颈:显卡渲染能力不够,降低分辨率/画质可缓解

GPU使用率 < 90%,CPU某核心使用率 > 85%

CPU瓶颈:主线程/Draw Call阻塞,降低视距/NPC数量更有效

GPU使用率波动大(60%~99%之间反复跳)

帧时间不稳:可能供电/散热策略导致频率波动

显存占用接近上限(>95%)

显存瓶颈:降低纹理质量、阴影分辨率

内存占用 > 85% + 卡顿时磁盘读写飙升

内存不足:系统使用虚拟内存,增加物理内存是唯一解

实操方法

在游戏加加的OSD面板上同时开启GPU使用率和CPU各核心使用率。跑测试场景时观察这两个数值:

  • 如果GPU使用率一直在 97-99%,而CPU没有一个核心超过 70%——降画质优先。
  • 如果GPU使用率在 70-80% 徘徊,但CPU第2核心(通常是渲染线程)常驻 90%+——降CPU负载优先。

六、进阶:用1% Low FPS定量评估优化效果

每次调整游戏设置或系统配置后,不能只看平均FPS变化——那太粗糙了。1% Low FPS才是衡量「卡顿改善程度」的核心KPI。

计算方式(以游戏加加导出的CSV为例):

  1. 在Excel中筛选出所有FPS数据列。
  2. 使用公式 =PERCENTILE.INC(FPS列, 0.01) 计算1% Low FPS。
  3. 使用公式 =PERCENTILE.INC(FPS列, 0.001) 计算0.1% Low FPS。

记录对比模板

代码语言:纯文本语言
复制
测试场景:永劫无间-自由练习-固定路线
          平均FPS   1% Low   0.1% Low   最高帧时间(ms)
默认高画质   88       42        28          38.5
关闭体积云   91       48        35          29.1
关闭环境光遮蔽 93      52        38          26.4

从这个数据可以看出:关闭环境光遮蔽对1% Low FPS的提升(52→?)比对平均FPS的提升(93→?)更显著,说明该场景的卡顿主要来自屏幕空间光照计算——这个结论如果不看1% Low,几乎不可能得出。


七、三个高频卡顿场景的诊断思路

场景一:转视角稳,开镜卡

帧时间尖峰出现在缩放/瞄准瞬间。根因通常是LOD(细节层次)切换或景深后处理开销。诊断方法:在游戏加加中观察「GPU使用率」是否在开镜瞬间从70%跳到99%——如果是,降低「景深」「屏幕空间反射」等后处理选项。

场景二:帧率不低,但画面有撕裂感

帧时间曲线正常,但视觉上有横向撕裂线。这是帧输出与显示器刷新不同步的问题。解决方向不是调画质,而是:

  • 开启 G-Sync / FreeSync(硬件条件满足时)
  • 在NVIDIA控制面板中为游戏开启「快速垂直同步」
  • 用 RTSS 将帧率上限锁定在显示器刷新率 - 3

场景三:玩了30分钟后开始卡

刚进游戏流畅,半小时后帧时间曲线逐渐上移且波动幅度增大。同时游戏加加显示GPU温度 > 85°C 或 CPU温度 > 90°C。这是典型的热节流(Thermal Throttling)——硬件撞温度墙后自动降频。

诊断确认:观察温度曲线与帧时间曲线的相关性。如果温度达到某个阈值后帧时间同步上升,基本可判定为散热问题。解决方向:清灰、更换硅脂、改善机箱风道,而非降低游戏画质。


八、建立自己的性能诊断基线

总结一套可用游戏加加执行的诊断流程:

  1. 采集基线数据:在固定测试场景中,记录5分钟性能日志。
  2. 绘制帧时间曲线:用Excel或LibreOffice Calc生成折线图,检查是否有异常尖峰。
  3. 判断瓶颈类型:对照第五节中的GPU/CPU使用率判断表,明确受限方。
  4. 计算1% Low FPS:用分位数公式得到量化卡顿指标。
  5. 单变量调整:每次只改一项设置(画质选项/驱动参数/系统服务),重新采集对比。
  6. 记录结论:将每次优化的数据记录在案,形成该游戏在该配置下的「性能档案」。

这套流程不需要任何付费软件。游戏加加负责数据采集,Excel负责分析,方法论就是本文所述内容。


九、补充:Windows系统层的几个优化项

这些设置对帧时间稳定性的影响常被低估:

  • 电源计划:控制面板 → 电源选项 → 选择「高性能」或「卓越性能」。平衡模式下CPU频率升降策略保守,负载突变时升频延迟可能达到几百毫秒——正好体现为帧时间尖峰。
  • 游戏模式:Windows 设置 → 游戏 → 游戏模式 → 开启。Win10 1903+版本的游戏模式会抑制Windows Update的后台活动。
  • 硬件加速GPU调度:Windows 设置 → 系统 → 屏幕 → 图形设置 → 开启「硬件加速GPU调度」。这会将GPU的VRAM管理从WDDM驱动层提升到系统层级,减少帧缓冲队列延迟。需重启生效。
  • 后台应用:设置 → 隐私 → 后台应用 → 关闭非必要的后台权限。尤其关注「Xbox Game Bar」的录屏叠加层——它在某些游戏中会使帧时间增加2-5ms。

这些操作与游戏加加的监控数据配合使用:改一项,跑一次测试,看帧时间曲线变化。用数据驱动优化,而非凭感觉。


本文所述诊断方法适用于大多数DirectX 11/12和Vulkan游戏。不同引擎的游戏瓶颈特征存在差异(虚幻引擎的游戏更易CPU瓶颈,Unity游戏更吃Draw Call),需结合具体场景判断。工具数据仅作为参考,不做硬件选购建议。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、一个问题:帧率 120,为什么画面还是卡?
  • 二、帧时间是什么,为什么比帧率更重要
  • 三、工具准备:配置游戏加加的帧时间采集
  • 四、实战:采集并分析一次帧时间数据
  • 五、瓶颈定位:CPU受限 vs GPU受限
  • 六、进阶:用1% Low FPS定量评估优化效果
  • 七、三个高频卡顿场景的诊断思路
  • 八、建立自己的性能诊断基线
  • 九、补充:Windows系统层的几个优化项
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档