5000人测试背后的秘密|GPM 2.0案例精讲

5000人测试背后的秘密|GPM 2.0案例精讲

这是一个真实案例,聚焦于某MMORPG项目在2024年下半年首次5000人玩家测试中的表现。本次测试中,项目首次集成了UWA GPM 2.0,收集并分析了海量玩家数据,包括玩家数量、硬件分布等运营指标,以及版本性能、设备实时性能报告等关键性能数据。这些数据既令人熟悉又充满新意,通过本文的深入分析,我们将带您揭示这些数据背后的价值,并展示如何将GPM 2.0的强大功能应用于您的项目,以提供实用的优化方法和洞见。

关于GPM 2.0

GPM 2.0 是一款专为上线或测试阶段的游戏项目打造的高效性能监测工具。它不仅深入捕捉宏观性能数据,还通过其独特的性能无损截图功能,让开发者在不影响玩家体验的前提下,全面掌握玩家运行时的关键细节,从多个维度优化游戏的性能表现,提升整体用户体验。

以下为UWA提供给开发团队的GPM 2.0 Insights报告部分原文(截帧和相关信息已做脱敏处理)。

在本周期内存在多个活跃版本,他们的版本性能如图所示。
取其中较新版本0.0.48,根据UWA性能评分的计算规则,目标帧率为60帧,目标内存4G下,目前0.0.48版本的性能得分为90.5分,整体性能表现良好。该版本中功耗问题表现稍差;其余指标表现良好。

本次Insights主要针对0.0.48版本作性能分析,详情可见下文。

可以看到有多个场景在高中低三个分档下都有较多的异常上报,他们的具体性能表现如下:

按照场景中各个重点指标的UWA推荐值判断,上图中黄色部分为中优先级优化项,红色部分为高优先级优化项。

我们可以看到,以上场景整体性能表现良好。主要需要关注scene_nameA场景和scene_cj_nameB场景中PSS内存相关的性能问题表现。

我们在表格中将部分场景下的PSS内存均值标记了红色与黄色的警戒标识,这是因为该项目的目标设备分档中需要支持4GB RAM的设备。根据UWA经验,对于4GB RAM而言,2000MB以上的PSS内存已经有可能导致项目在设备上的崩溃闪退,因此需要项目组对这样较高的PSS内存表现加以重视。

下一步,我们就可以进入到具体某一场景的性能观察阶段。无论是通过场景性能列表找到表现最差的场景,或是根据游戏内玩法定向查看某些重点场景,都可以用以下的方法进行场景性能问题的排查与定位。

1. Jank卡顿/FPS表现
本轮统计周期内,scene_nameA场景下的Jank卡顿指标表现稍差。在场景报告列表中可以看到共有异常报告232条,通过“Jank卡顿≥100(次/10min)”为条件进行筛选,可以看到有103条报告符合该条件,占比44.40%,该值较高。

Case1:658s内发生卡顿187次,平均每分钟超17次,该值较高。
设备:Samsung SMS9080
截图:

进入到具体异常报告页面后,首先默认展示的便是玩家在游戏过程中每10秒一张的定时截帧图像和FPS数据,并会对FPS相关异常进行打点标记,涉及的异常种类有:Jank、BigJank、帧耗时>100ms和FPS抖动。将鼠标移动至异常点处,还能够看到触发异常瞬间的画面截帧(所有异常点截帧共享最低10秒一张的内置CD),能够让项目组更加直截了当地看到玩家究竟是在游戏中的哪一部分、或者是进行了什么样的操作有可能导致了这些FPS异常,从而再也不用去面对玩家“卡了”却又没有进一步提供信息的客诉反馈时的抓狂。

另外,在部分项目上我们也遇到过同一个场景下,当玩家触发某些事件之后帧率发生区间性下降的情况,配合画面截帧也能够协助项目组把有异常的场景和时间迅速定位出来。

2. PSS内存
无论是项目需要发往海外、适配iOS,还是项目内采用了一些容易令PSS内存出现问题的技术方案(例如Spine),PSS内存同样也是一个常常令人头疼的问题。通过UWA GPM 2.0,我们不仅可以看到玩家端设备上真实的PSS内存表现情况,更可以通过走势图等方式来尝试定位PSS内存发生上涨情况的“拐点”。

内存方面,可以看到在部分设备上存在疑似PSS内存泄漏或缓存过度的内存走势,建议通过观察玩家游玩路径,结合UWA GOT Online进行进一步排查。

针对统计周期内项目的PSS内存表现,在「异常Session报告」中可以看到,周期内共有异常Session报告4769条,在右上角以“PSS内存峰值≥2000MB”为条件进行筛选可得结果为3055条,占比为65.95%,该值过高。

同理,以“PSS内存峰值≥3000MB”为条件进行筛选可得结果为645条,占比为13.52%。

Case2:2020s内PSS内存从2664MB上升至4009MB,差值近1400MB。且需要注意的是4000MB+的PSS内存已经有可能在RAM大小≤8GB的设备上导致闪退崩溃,建议项目组对此加强重视。
设备:nubia NX713J
截图:

3. 功耗
功耗问题也是通过GPM 2.0工具能够快速确认问题的主要模块之一。由于功耗与耗电、发热、降频等一系列表现息息相关,因此我们通常建议项目组在使用GPM 2.0时也要重点观察功耗模块下项目的表现。不过,由于玩家在进行游戏时的设备接电与否会对功耗数据产生巨大影响,因此我们通常建议大家只关注那些确实没有边充电边游戏的报告(功耗模块下也有设备电量的实时监控)。

功耗(电流、功率、耗电量)问题相对偏重,建议针对相关机型测试UWA GOT Online确定其较高的具体原因。

Case3:10min内耗电7%,功耗均值超过3000mW,且存在多个接近或达到4500mW的功耗峰值,最高达到了12115mW,该值过高。
设备:Xiaomi 23113RKC6C
截图:

同时,通过画面截帧发现在部分NPC身上出现了Shader丢失的情况,请及时修复。

除了上述性能方面的表现外,GPM 2.0还可以承担玩家设备详情统计工具的角色。在「硬件性能分析」模块下,我们可以获取到玩家所用设备的品牌、具体机型占比,并通过下载数据和二次处理的方式得到Top30重要机型,或者是从SoC、GPU、设备等维度对各性能指标查看表现较差的设备列表。本次数据收集期间:

(1) 共660款机型启动游戏,总计游戏启动次数约为5911次。

(2) Top 30机型如下图所示,共计启动约1578次,占比26.65%。

(3)内存统计:设备RAM在高端机下相对集中,但鉴于目前游戏在部分设备上PSS会上升至4000MB以上,且根据UWA经验通常4000MB+的PSS内存已经有可能在RAM大小在8GB及以下的设备上导致闪退,这在统计周期内占比为45%以上,建议项目组特别注意。

(4)图形API统计:OpenGL ES 3.x占比100%,建议研发团队可以将纹理格式转换成ASTC格式。


从上述案例分析可见,GPM 2.0从内存占用、功耗、玩家行为、设备信息等多个维度提供给项目组实时的数据分析,结合UWA Insights报告,可以将当前版本的总体表现一览无余。以下再总结几点可以借鉴的方法论,供大家参考。

1. 关于PSS内存上涨

在本文的示例项目中,我们可以在Session列表中对大内存报告的占比进行统计,以确定目前项目下确实在PSS内存方面存在内存过高的性能表现问题。而具体到其中某一份报告内,其内存数据呈现出随着游戏时间的推移不断上涨得情况,这通常意味着项目内出现了疑似PSS内存泄漏的不佳表现,且在该设备上的PSS内存最终达到了4GB以上,这对于很多RAM≤8GB的设备而言都已经出现了潜在的崩溃闪退风险。

而具体到PSS内存上涨的拐点处,即使我们对画面进行了脱敏处理,大家也可以通过截帧画面的颜色清楚得分辨出红框和蓝框部分的画面场景发生了明显的变化。由于该项目也同时接入了UWA SaaS性能服务体系,因此可以通过UWA GOT Online的内存模式对该场景变化进行进一步的分析测试,从而定位到PSS内存上涨的根本原因。可参考往期详解:如果闪退是因为内存崩了|GPM 2.0 实操之Session篇

2. 关于功耗开销过大

在示例项目中,我们可以看到其中大量报告下显示的功耗数值超过了9000mW,耗电速度也基本维持在每分钟1%~1.5%,这显然处于一个过高的水准。通过观察其相应阶段的画面截帧我们发现高功耗时段下,往往可以看到玩家在主城场景下打开了某些UI界面,因此很有可能是当玩家打开UI时,主程场景相机并没有被关闭而是被叠在UI相机下方,造成了不必要的开销。对于此类推测,项目组也可以通过UWA GOT Online的GPU测试来进行专项检测,进一步分析功耗方面的过大开销。

3. 通过截帧发现更多玩家端表现

由于在UWA GPM 2.0的报告中都带有玩家进行游戏时的画面截帧,因此通过观察玩家的行为动线,常常还会有一些意外的“收获”。例如可以观察玩家的行为逻辑来判断是不是在某些部分存在一些引导方面的缺失,或者通过画面观察是否在一些特定硬件/芯片上会出现一些Shader丢失问题。

4. 通过数据协助研发决策

在「硬件性能分析」模块,从机型、SoC、GPU及硬件参数等维度汇总玩家硬件信息,帮助研发和运营团队协作,针对不同市场的特点,制定更精准的开发规范和推广策略,降低获客成本,提升用户留存率。可参考往期详解:硬件性能一目了然|GPM 2.0 驱动优化与投放决策

如果您的项目也希望体验GPM 2.0的强大功能,欢迎随时与UWA取得联系。我们将为您提供免费试用机会,并在试用期间全程支持服务搭建、数据分析与反馈,确保您能够充分体验GPM 2.0带来的价值。

联系UWA:
邮件:sales@uwa4d.com
微信号:17502188376