腾讯游戏性能实战案例分享之帧率陡变

导语

在最近一次游戏性能专项测试过程中发现帧率陡降,开发同学分析源代码堆栈信息,折腾了很久一直无法定位原因,最终定位到原来是手机发热降频引起。

有经验一看完整的性能数据,基本一眼都能看出问题原因。需要强调一点:分析问题需要整体数据联动分析,单独看某单一信息是没是意义的。这个案例很典型,所以将本次性能实战经验分析出来,希望对测试或者开发同学有些帮助。

一月一度的游戏性能专项回归测试过程中,我们再Galaxy S9 Plus手机上测试发现,帧率出现陡降问题,非常有规律的:进入游戏玩一段时间帧率FPS出现缓慢降低,从50帧降低到十几帧,然后一直持续低帧率,低帧率情况下Jank卡顿明显增加,具体如PerfDog客户端截图:

对应web截图(web图表信息看的会更直接些)如下:

开发同学还以为是游戏代码问题,打印堆栈信息也没看出什么问题,CPU利用率15%左右,总利用率40%左右都很正常,问题是陡降过程中,CPU利用率也无变化。如图:

排除了CPU的原因,那是否是内存memory出现泄漏,导致内存不够用以至于出现内存swap置换问题被?但通过数据看,500-600MB左右也很正常。如图:

CPU和内存都没有问题,游戏的渲染画面,相对来说GPU可能出现瓶颈,逐对GPU进行查看,发现帧率陡降过程中GPU利用率从80%-40%左右,说明GPU不是性能瓶颈点,GPU降为40%这个如何理解?是由于帧率降低了,渲染东西变少了,自然利用率降低。

很容易想到的点都分析到,都没发现说明问题。在测试过程中发现手机发热厉害,会不会与温度有关?如图:

实际测试发现,发现温度竟然高达70度了,这是要煮鸡蛋的节奏?凭对CPU硬件感知,觉得可能是高温引起CPU降频。马上查看CPU Freq频率信息,如图:

图片发现帧率从47帧讲到16.9帧,频率从1700+2800降低到576+825。验证了确实是降频引起帧率降低,顿开茅塞的感觉。这次问题也得以解决。

PerfDog专家课堂划重点:

手机硬件温控系统,为什么需要温控?

因为:手机高频运行类似发动机一样,产生极大能耗热量,高频随着运行时间,温度会持续增加,若不加控制,会不会上几百度?会烧毁CPU芯片,所以硬件需要温度控制,如何控制?唯有降低CPU频率,当温度超过一定阈值,就会触发温控降频机制。不同手机厂商温度阈值不一样,有些手机50度就会降频,有些手机65度才会降频,之前测试过小米5,好像不到50度就会降频,对温度及其敏感。

PerfDog是专注于移动性能测试分析的平台,能够提供很多性能数据,每一项数据都很有意义和价值。但是在分析问题过程中,需要多数据一起联动分析,可能会发现意想不到的效果。

原文地址:https://www.cnblogs.com/wetest/p/12654923.html

时间: 2024-10-04 07:22:17

腾讯游戏性能实战案例分享之帧率陡变的相关文章

如何通过AI 全面提升运维效率?AIOps实战案例在选型宝分享

前言 运维,是企业IT最基础的工作,也是痛点.槽点最多的工作.海量的数据.频繁的报警.艰难的排障.无情的投诉,足以让运维工程师们感到崩溃和绝望-- Gartner在ITOA (IT Operations Analytics IT运营分析)的基础上,提出了AIOps的概念.当时,AIOps的含义是"基于算法的IT运维(Algorithmic IT Operations)".随着AI热潮的到来,Gartner也顺时应势,在2017年的一份报告中,将AIOps重新定义为"Artif

《Android移动性能实战》腾讯 SNG 专项测试团队 著 高清pdf

<Android移动性能实战> 1.腾讯社交网络质量部吴凯华.<大话移动App测试>系列作者陈晔倾情作序,胡星.梁捷.杨俊峰等业内大牛联袂力荐2.本书来自腾讯SNG专项测试团队多年来手机QQ.QQ空间.QQ音乐等项目沉淀下来的经典案例,从资源类性能的内存.CPU.磁盘.网络.电量和交互类性能的流畅度.响应时延等多个方向进行介绍,包含核心问题.实用工具.典型案例等,是Android APP性能和开发工程师的必备案头手册. 百度网盘链接: https://pan.baidu.com/s

实战案例|摇奖游戏的开发教程

今天,我们跟大家分享一个实战小案例-----具有互动特效的摇奖游戏.在这个小案例中,可以看到随风徐徐下落的花瓣,点击时还会有元宝掉落.这个实战案例可以直接用于抽奖游戏,或者游戏特效使用. 逻辑图 1.创建项目 打开Wing,创建一个游戏项目 (因为游戏中用的素材背景图是400x800的分辨率,所以我将屏幕的大小也设置成480x800) 2.添加素材到项目中 将游戏中用到的素材添加到项目中,并在资源配置文件中进行配置 3.显示背景与摇钱树 在createGameScene函数中添加如下代码: va

性能调优案例分享:Mysql的cpu过高

性能调优案例分享:Mysql的cpu过高 问题:一个系统,Mysql数据库,数据量变大之后.mysql的cpu占用率很高,一个测试端访问服务器时mysql的cpu占用率为15% ,6个测试端连服务器的时候mysql cpu占用率为50%~60% .ps 1: 每个测试端所做事情就是插入记录,不过插入前会先查询一下是否已经有相同的记录,有的话就更新原有记录,没有就直接插入. ps 2: CPU--Pentium Dual E1240 @ 1.60GHZ内存--2GOS--Windows 2003调

Java图形界面实战案例——实现打字母游戏

实现打字母的游戏 这次这个案例可以说是头几次所讲的内容的一个技术汇总,主要是 运用了几大块的知识.我们先来定义一下案例的背景:在一个300*400的窗体上,有10个随机产生的字母下落,在键盘上敲击字母,若是敲对了就消掉,初始化的成绩为1000分,每次敲对一个字母就加上10分,如果在字母落到了屏幕的下方还没有敲对的话则判定为失败,就扣除100分. 我们还是老样子,先来进行步骤的划分 1.做满天星 2.把星星改成随机的10个字母 3.让字母落下,如果字母落出了屏幕就生成新的字母,并从屏幕的上方重新出

腾讯游戏数据自愈服务方案

腾讯游戏数据自愈服务方案简介 1. 引言 在正式介绍项目背景之前,让我们先看一组数据: 这是2个灰度的业务,都是Z3服务器,我们先只从时间成本的收益角度来看: ⑴  左一业务数据量是330G,数据不一致时通过重做slave需要150分钟左右,而借助pt-table-sync只需要5分钟,速度提升30 倍. ⑵  右一业务的量是93G,通过sync工具花费3分钟,而如果重做slave要35分钟,速度提升12倍. 引入这组数据意在指明,整个过程不仅解放了DBA的双手,也符合"零运维"的趋势

《Web渗透技术及实战案例解析》pdf

下载地址:网盘下载 内容简介 编辑 本书从Web渗透的专业角度,结合网络安全中的实际案例,图文并茂地再现Web渗透的精彩过程.本书共分7章,由浅入深地介绍和分析了目前网络流行的Web渗透攻击方法和手段,并结合作者多年的网络安全实践经验给出了相对应的安全防范措施,对一些经典案例还给出了经验总结和技巧,通过阅读本书可以快速掌握目前Web渗透的主流技术.本书最大的特色就是实用和实战性强,思维灵活.内容主要包括Web渗透必备技术.Google黑客技术.文件上传渗透技术.SQL注入.高级渗透技术.0day

腾讯游戏是如何使用Docker的

转自:http://www.infoq.com/cn/articles/how-tencent-game-use-docker 干货 | 腾讯游戏是如何使用Docker的? 作者 郭蕾 发布于 2015年8月15日 | 讨论 分享到: 微博 微信 Facebook Twitter 有道云笔记 邮件分享 稍后阅读 我的阅读清单 腾讯第一季度的财报显示, 腾讯游戏的收入占腾讯总营收的59.4%,很显然,腾讯游戏已经是腾讯最赚钱的部门,当然,腾讯也是国内最大的游戏发行商.游戏行业相对于其他行业来说特

清算/报表/日终跑批程序之性能优化案例(一)

前言 不知不觉,技术人生系列·我和数据中心的故事来到了第五期.小y又和大家见面了! 前几期主要发了一些TroubleShooting的案例分享,其实小y最擅长的是性能优化,所以从这期开始,小y会陆续的分享更多的数据库性能优化案例. 进入正题,如果您的日终跑批/清算/报表等程序时快时慢,或者从某一天以后就一直变慢,作为运维DBA或开发的您,会怎么下手?还有,除了解决问题外,你要如何解答领导最关心的一个问题,"为什么现在有问题,但是以前没有问题呢"! 小y今天要和大家分享的就是这样一个性能