CN110300327B - 一种游戏客户端性能分析方法、装置、终端及存储介质 - Google Patents
一种游戏客户端性能分析方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110300327B CN110300327B CN201910313908.0A CN201910313908A CN110300327B CN 110300327 B CN110300327 B CN 110300327B CN 201910313908 A CN201910313908 A CN 201910313908A CN 110300327 B CN110300327 B CN 110300327B
- Authority
- CN
- China
- Prior art keywords
- game
- image frame
- target
- game client
- data generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/4424—Monitoring of the internal components or processes of the client device, e.g. CPU or memory load, processing speed, timer, counter or percentage of the hard disk space used
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4781—Games
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请提供一种游戏客户端性能分析方法、装置、终端及存储介质,通过触发启动游戏客户端进程,在游戏客户端脚本中注入第一卡顿监测逻辑,以在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,并在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的图像帧的数据生成时间,进而在图像帧的数据生成时间满足根据预先设置的与游戏客户端的目标游戏场景匹配的基准参数生成的任一卡顿条件时,确定游戏客户端运行游戏时在该图像帧处发生了卡顿,进而基于对游戏客户端运行目标游戏场景下的游戏时发生卡顿的图像帧的监测体现游戏客户端真实性能。
Description
技术领域
本发明涉及游戏应用技术领域,更具体地说,涉及一种游戏客户端性能分析方法、装置、终端及存储介质。
背景技术
游戏客户端性能严重影响游戏玩家的游戏体验,良好的游戏客户端性能可以为游戏玩家带来更好的游戏体验,增加游戏玩家对游戏的粘性。
目前是基于游戏在各个游戏场景中的游戏性能数据的平均值【比如,平均帧率FPS,平均帧率FPS表示每秒钟从终端屏幕中刷新出的画面数】,实现的对游戏客户端性能的测试。然而,游戏性能数据的平均值虽然可以在一定程度上体现游戏客户端是否存在的性能风险,但是却不能真实的反应游戏客户端是否存在性能问题。
有鉴于此,本申请提供一种游戏客户端性能分析方法、装置、终端及存储介质,检测游戏客户端运行游戏时出现的卡顿情况,以此来达到反应游戏客户端真实性能的目的。
发明内容
有鉴于此,为解决上述问题,本发明提供一种游戏客户端性能分析方法、装置、终端及存储介质,通过对游戏客户端运行游戏时出现的卡顿情况的检测,达到反应游戏客户端真实性能的目。技术方案如下:
一种游戏客户端性能分析方法,包括:
接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
触发启动所述游戏客户端进程,在所述游戏客户端脚本编译时在所述游戏客户端脚本中注入第一卡顿监测逻辑,所述第一卡顿监测逻辑用于在所述游戏客户端运行游戏之前触发所述游戏客户端确定目标游戏场景,以及,用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在所述游戏客户端中生成的数据内容的生成时间;
根据预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数,生成与所述游戏客户端的所述目标游戏场景匹配的至少一个卡顿条件;
若所述图像帧的数据生成时间满足任一所述卡顿条件,确定所述游戏客户端运行所述目标游戏场景下的游戏时,在所述图像帧处发生卡顿。
一种游戏客户端性能分析装置,包括:
游戏客户端确定单元,用于接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
注入单元,用于触发启动所述游戏客户端进程,在所述游戏客户端脚本编译时在所述游戏客户端脚本中注入第一卡顿监测逻辑,所述第一卡顿监测逻辑用于在所述游戏客户端运行游戏之前触发所述游戏客户端确定目标游戏场景,以及,用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在所述游戏客户端中生成的数据内容的生成时间;
卡顿条件生成单元,用于根据预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数,生成与所述游戏客户端的所述目标游戏场景匹配的至少一个卡顿条件;
卡顿确定单元,用于若所述图像帧的数据生成时间满足任一所述卡顿条件,确定所述游戏客户端运行所述目标游戏场景下的游戏时,在所述图像帧处发生卡顿。
一种终端,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述游戏客户端性能分析方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行所述游戏客户端性能分析方法。
本申请提供一种游戏客户端性能分析方法、装置、终端及存储介质,通过触发启动游戏客户端进程,在游戏客户端脚本中注入第一卡顿监测逻辑,以在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,并在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的图像帧的数据生成时间,进而在图像帧的数据生成时间满足根据预先设置的与游戏客户端的目标游戏场景匹配的基准参数生成的任一卡顿条件时,确定游戏客户端运行游戏时在该图像帧处发生了卡顿。
本申请可以在游戏客户端运行游戏时,实时监测其所发生的卡顿情况,进而由游戏客户端运行游戏时所发生的卡顿情况体现游戏客户端的真实性能。并且,本申请是通过对图像帧中用于在游戏客户端中生成的数据内容的生成时间的监测(即,图像帧的数据生成时间),实现的对卡顿情况的监测,图像帧的数据生成时间仅与游戏客户端的性能相关,不受网络传输等情况的影响,因此,提高了卡顿情况的监测结果与游戏客户端的性能的关联性,保证了基于游戏客户端卡顿情况监测结果所体现出的游戏客户端的真实性能的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种游戏客户端性能分析系统的结构示意图;
图2为本申请实施例提供的一种游戏客户端性能方法所适用于的终端的硬件结构框图;
图3为本申请实施例提供的一种游戏客户端性能分析方法流程图;
图4(a)-(c)为本申请实施例提供的一种游戏客户端性能分析方法应用场景示意图;
图5为本申请实施例提供的另一种游戏客户端性能分析方法流程图;
图6为本申请实施例提供的一种基于至少一个渲染需求和至少一个函数,分析游戏客户端运行目标游戏场景下的游戏时,在目标图像帧处发生卡顿的原因的方法流程图;
图7为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第一卡顿条件的方法流程图;
图8为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第二卡顿条件的方法流程图;
图9为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第三卡顿条件的方法流程图;
图10为本申请实施例提供的一种游戏客户端性能分析装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
本申请实施例提供一种游戏客户端性能分析方法、装置、终端及存储介质,通过对游戏客户端运行游戏时出现的卡顿情况的监测,体现游戏客户端的真实性能。
本申请实施例提供的一种游戏客户端性能分析方法应用于游戏客户端性能分析应用,该游戏客户端应用分析应用由性能分析客户端和为性能分析客户端提供技术支持的性能分析服务器构成。
终端上可以安装至少一个游戏客户端,终端若需要对游戏客户端进行性能分析,可以在终端上安装性能分析客户端,进而由该性能分析客户端实现对游戏客户端的性能分析。
为了便于对本申请实施例提供的一种游戏客户端性能分析方法的理解,现对本申请实施例提供的一种性能分析方法所应用于的游戏客户端性能分析系统进行详细说明。
参见图1为本申请实施例提供的一种游戏客户端性能分析系统的结构示意图。如图1所示,该系统包括性能分析服务器11和终端12,终端12上安装有性能分析客户端。
本申请实施例提供的一种游戏客户端性能分析方法包括两个过程,一个过程是对游戏客户端运行游戏时出现的卡顿情况的监测,一个过程是若监测出游戏客户端运行游戏时在一图像帧出发生卡顿,对该图像帧出发生卡顿的原因的检测。
作为本申请实施例的一种优选实现方式,可以在终端侧实现对游戏客户端运行游戏时出现的卡顿情况的监测,在性能分析服务器侧实现对发生卡顿的图像帧的卡顿发生原因的检测。
作为本申请实施例的一种优选实现方式,还可以在终端侧实现对游戏客户端运行游戏时出现的卡顿情况的监测,以及对发生卡顿的图像帧的卡顿发生原因的检测。
作为本申请实施例的一种优选实现方式,还可以在服务器侧实现对游戏客户端运行游戏时出现的卡顿情况的监测,以及对发生卡顿的图像帧的卡顿发生原因的检测。
以上仅仅是本申请实施例提供的一种游戏客户端性能分析方法的应用场景的几种优选实现方式,觉得有关本申请实施例提供的一种游戏客户端性能分析方法的具体应用场景发明人可根据自己的需求进行设置,在此不做限定。
现以在终端侧实现对游戏客户端运行游戏时出现的卡顿情况的监测,在性能分析服务器侧实现对发生卡顿的图像帧的卡顿发生原因的检测为例对本申请实施例提供的一种游戏客户端性能分析方法进行详细说明。
为了便于理解,现先对本申请实施例提供的一种游戏客户端性能方法所适用于的终端进行详细介绍,具体请参见图2。
如图2所示该终端可以包括:处理器201、存储器202、通信接口203、输入单元204和显示器205和通信总线206。
存储器202中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本申请实施例中,该存储器中至少存储有用于实现以下功能的程序:
接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
触发启动游戏客户端进程,在游戏客户端脚本编译时在游戏客户端脚本中注入第一卡顿监测逻辑,第一卡顿监测逻辑用于在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,以及,用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在游戏客户端中生成的数据内容的生成时间;
根据预先设置的与游戏客户端的目标游戏场景对应的基准参数,生成与游戏客户端的目标游戏场景匹配的至少一个卡顿条件;
若图像帧的数据生成时间满足任一卡顿条件,确定游戏客户端运行目标游戏场景下的游戏时,在图像帧处发生卡顿。
可选的,程序的细化功能和扩展功能可参照下文描述。
处理模块201、存储器202、通信接口203、输入单元204、显示器205、均通过通信总线206完成相互间的通信。
在本申请实施例中,该处理器201,可以为中央处理器(Central ProcessingUnit,CPU),特定应用集成电路(application-specific integrated circuit,ASIC),数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件等。
该处理器可以调用并执行存储器202中存储的程序。
该通信接口203可以为通信模块的接口,如GSM模块的接口。
本申请还可以包括输入单元204,该输入单元可以包括感应触摸显示面板上的触摸事件的触摸感应单元、键盘等等。
该显示器205包括显示面板,如触摸显示面板等。在一种可能的情况中,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-EmittingDiode,OLED)等形式来配置显示面板。
当然,图2所示的终端结构并不构成对本申请实施例中终端的限定,在实际应用中终端可以包括比图2所示的更多或更少的部件,或者组合某些部件。
下面结合本申请的以上共性,从终端侧对本申请实施例提供的一种游戏客户端性能分析方法进行详细说明。
S301、性能分析客户端接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
在本申请实施例中,终端上安装有性能分析客户端,用户打开性能分析客户端后,性能分析客户端可以展示第一界面,第一界面中显示有终端当前安装的各个游戏客户端的列表,用户可以选取其中的任意一个游戏客户端【参见图4(a)】,在选取游戏客户端后,用户可以点击“性能分析按钮”【参见图4(b)】,以进行对该被选取的游戏客户端的性能分析。
S302、性能分析客户端触发启动游戏客户端进程,在游戏客户端脚本编译时在游戏客户端脚本中注入第一卡顿监测逻辑;
在本申请实施例中,优选的,性能分析客户端触发启动游戏客户端进程,在游戏客户端脚本编译时在游戏客户端脚本中注入第一卡顿监测逻辑的过程可以为:性能分析客户端触发启动游戏客户端进程,在游戏客户端脚本动态编译时在游戏客户端脚本中注入第一卡顿监测逻辑。
在本申请实施例中,第一卡顿监测逻辑用于在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,以及,用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在游戏客户端中生成的数据内容的生成时间。
性能分析客户端对游戏客户端进行性能分析的过程包括性能分析客户端拉起客户端游戏,触发启动游戏客户端进程,游戏客户端进程被触发后,会先对游戏客户端脚本进行编译,在对游戏客户端脚本进行编译再在性能分析客户端中运行游戏客户端中的游戏。本申请实施例可以在对游戏客户端脚本进行编译时,在游戏客户端脚本中注入第一卡顿监测逻辑,这样便可以使得性能分析客户端在运行游戏客户端中的游戏的过程中,可以同时运行第一卡顿监测逻辑。
用户在点击如图4(b)所示的“性能分析按钮”后,进入对游戏客户端3的性能分析过程,首先,在性能分析客户端中拉取游戏客户端3,触发启动游戏客户端3的进程,并在游戏客户端3的脚本进行编译时,在游戏客户端3的脚本中注入第一卡顿监测逻辑,该过程可以在性能分析客户端的后台完成,性能分析客户端3可以不对该过程进行相应的界面展示,在该过程执行完成后,可以在性能分析客户端中显示游戏客户端界面,因为注入了第一卡顿逻辑,可以看到在游戏客户端界面上层显示有与性能分析有关的信息,比如“开始进行性能分析按钮”。如图4(c)所示,用户点击“开始进行性能分析按钮”,开始测试过程,即,开始对游戏客户端的性能进行分析。用户在点击“开始进行性能分析按钮”后,触发在游戏客户端界面上显示“场景对话框”,该场景对话框中显示有3种选项,分别为“战斗场景模式”选项、“非战斗场景模式”选项,和“取消”选项;用户选取这3个选项中的任一选项后,进入与该选项对应的过程。比如,用户选取“战斗场景模式”选项后,游戏客户端进入战斗场景;若用户选取“非战斗场景模式”选项后,游戏客户端进入非战斗场景;若用户选取“取消”选项后,取消对游戏客户端的性能分析。其中,不论用户选取的是“战斗场景模式”选项还是“非战斗场景模式”选项,均可以确定游戏客户端确定了目标游戏场景,在用户选取“战斗场景模式”选项时,游戏客户端确定的目标游戏场景是战斗场景;在用户选取“非战斗场景模式”选项时,游戏客户端确定的目标游戏场景是非战斗场景。
在本申请实施例中,战斗场景模式指示游戏客户端提供的战斗场景;非战斗场景模式指示游戏客户端提供的各个非战斗场景,比如大厅场景等等。
用户选取了“战斗场景模式”选项或者“非战斗场景模式”选项后,游戏客户端进行相应的场景(比如战斗场景或者非战斗场景),进而用户可以在该场景(为了便于区分,可以将该场景暂称为目标游戏场景)中进行游戏操作,以在性能分析客户端拉取的游戏客户端中运行目标游戏场景下的游戏,相应的,本申请实施例提供的一种游戏客户端性能分析方法可以监测游戏运行过程中出现卡顿的各个图像帧。
并且,性能分析客户端可以获取用户对场景模式的选择,并向性能分析服务器发送信息获取请求,在该信息获取请求中指示有游戏客户端以及目标游戏场景。
在本申请实施例中,因为在游戏客户端脚本编译时,在游戏客户端脚本中注入了第一卡顿逻辑,第一卡顿监测逻辑用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的每个图像帧的数据生成时间,因此,在游戏客户端运行目标游戏场景下的游戏时,游戏客户端可以将其所显示的每个图像帧的数据生成时间上报给性能分析客户端,以便于性能分析客户端根据图像帧的数据生成时间,确定游戏客户端在该图像帧处是否发生了卡顿。
需要说明的是:游戏客户端的图像帧中包括用于在游戏客户端生成的数据内容。图像帧的数据生成时间的确定方式为:确定图像帧中用于在游戏客户端中生成的数据内容,并将该数据内容的生成时间作为图像帧的数据生成时间。数据生成时间可以包括数据生成开始时间点、数据生成结束时间点以及数据生成时长。
S303、性能分析客户端向性能分析服务器发送信息获取请求,信息获取请求指示有游戏客户端以及目标游戏场景;
性能分析客户端可以响应用户对场景对话框中场景模式的选择操作,确定用户选取的场景模式,基于用户选取的场景模式向性能分析服务器发送信息获取请求,该信息获取请求指示有性能分析客户端当前拉取的游戏客户端以及用户选取的场景模式所对应的游戏场景。比如,若用户选取的场景模式为“战斗场景模式”时,该场景模式对应的游戏场景为战斗场景;若用户选取的场景模式为“非战斗场景模式”时,该场景模式对应的游戏场景为非战斗场景。
S304、性能分析服务器查找预先设置的与游戏客户端的目标游戏场景对应的基准参数;
性能分析服务器中可以预先设置至少一条对应关系,每条对应关系由游戏客户端、游戏场景和基准参数构成;性能分析服务器在接收到信息获取请求后,确定信息获取请求中携带的游戏客户端和目标游戏场景,并从其预先设置的至少一条对应关系中查找包括游戏客户端和目标游戏场景的对应关系,并将查找到的该条对应关系所包括的基准参数作为查找到的预先设置的与信息获取请求指示的游戏客户端和目标游戏场景对应的基准参数;并将该查找到的基准参数返回给性能分析客户端。
S305、性能分析服务器向性能分析客户端返回基准参数;
S306、性能分析客户端根据基准参数生成与游戏客户端的目标游戏场景匹配的至少一个卡顿条件;
在本申请实施例中,性能分析客户端在接收到基准参数后,可以根据该基准参数生成与游戏客户端的目标游戏场景匹配的至少一个卡顿条件。
作为本申请实施例的一种优选实施方式,性能分析客户端中可以预先设置至少一个卡顿条件模型,卡顿条件模型携带至少一个变量,性能分析客户端所接收到的基准参数中包括各个卡顿条件模型携带的每个变量的参数值;性能分析客户端在接收到基准参数后,可以将对应卡顿条件模型的变量的参数值赋值给该变量,以得到与每个卡顿条件模型对应的卡顿条件。
因为不同的游戏客户端的用户对性能的需求可能不同(比如,对卡顿的容忍度不同),不同的游戏场景的用户对游戏性能的需求也可能不同,因此,本申请实施例可以针对不同的游戏客户端下的不同游戏场景设置与其相匹配的基准参数,这样,可以使得本申请实施例提供的一种游戏客户端性能分析方法更加灵活、适用范围更加广泛。
S307、若图像帧的数据生成时间满足任一卡顿条件,性能分析客户端确定游戏客户端运行目标游戏场景下的游戏时,在图像帧处发生卡顿。
在本申请实施例中,性能分析客户端中拉取的游戏客户端运行目标游戏场景下的游戏时,性能分析客户端可以实时获取游戏客户端显示的每个图像帧的数据生成时间,性能分析客户端在获取到图像帧的数据生成时间后,可以判断该图像帧的数据生成时间是否满足生成的至少一个卡顿条件中的任意一个卡顿条件,只要该图像帧的数据生成时间满足至少一个卡顿条件中的一个卡顿条件,便可以确定游戏客户端在运行目标游戏场景下的游戏时,在该图像帧处发生了卡顿。
本申请实施例中,针对在性能分析客户端中拉取的游戏客户端在运行目标游戏场景下的游戏时,针对其所显示的每一个图像帧,性能分析客户端都可以及时的确定游戏客户端是否在该图像帧处发生卡顿,由此,可以实现对目标游戏场景中依次出现的各个卡顿的图像帧的确定,基于对目标游戏场景中依次出现的各个卡顿的图像帧的确定,可以体现游戏客户端的性能。
图5为本申请实施例提供的另一种游戏客户端性能分析方法流程图。
如图5所示,该方法包括:
S501、性能分析客户端接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
S502、性能分析客户端触发启动游戏客户端进程,在游戏客户端脚本编译时在游戏客户端脚本中注入第一卡顿监测逻辑,在为游戏客户端提供运行环境的游戏引擎中注入第二卡顿监测逻辑以及在游戏客户端底层注入第三卡顿监测逻辑;
在本申请实施例中,为了实现对图像帧处出现卡顿原因的定位,第一卡顿逻辑还可以用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端调用的游戏客户端脚本中的函数以及该函数的调用时间。为了便于区分,暂将游戏客户端调用的游戏客户端脚本中的函数称为第一函数。
进一步的,为了更加准确的对图像帧处出现卡顿原因的分析,还可以在在性能分析客户端拉起游戏客户端,触发启动游戏客户端的进程时,在对游戏客户端脚本进行编译时,在为游戏客户端提供运行环境的游戏引擎中注入第二卡顿逻辑。
在本申请实施例中,第二卡顿逻辑可以用于在游戏客户端运行目标游戏场景下的游戏时,检测游戏引擎所调用的函数以及函数的调用时间,为了便于区分,可以将游戏引擎所调用的函数暂称为第二函数。
在本申请实施例中,函数的调用时间可以包括函数的开始调用时间、结束调用时间和调用时长。
更进一步的,为了更加准确的对图像帧处出现卡顿原因的分析,还可以在在性能分析客户端拉起游戏客户端,触发启动游戏客户端的进程时,在对游戏客户端脚本进行编译时,在游戏客户端底层注入第三卡顿逻辑。
第三卡顿逻辑可以用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端对游戏的渲染需求以及渲染需求的发生时间。
在本申请实施例中,游戏客户端底层可以为游戏客户端openGL层,在游戏客户端底层openGL层注入第三卡顿逻辑后,游戏客户端存在渲染需求时会控制终端上的CPU向终端上的GPU发送GPL指令,进而由GPU执行与GPU指令指示的渲染需求对应的渲染操作。其中,GPL指令可以指示渲染需求,GPL指令的发送时间可以认为是渲染需求的生成时间。
在本申请实施例中,可以由游戏客户端主动上报基础信息(基础信息可以包括:第一函数的上报时间、第二函数的调用时间和渲染需求的发生时间等等)给性能分析客户端;也可以由游戏客户端主动上报基础信息给性能分析服务器;还可以由游戏客户端主动上报基础信息给性能分析客户端,进而由性能分析客户端将游戏客户端上报的基础信息发送给性能分析服务器。
S503、性能分析客户端向性能分析服务器发送信息获取请求,信息获取请求指示有游戏客户端以及目标游戏场景;
S504、性能分析服务器查找预先设置的与游戏客户端的目标游戏场景对应的基准参数;
S505、性能分析服务器向性能分析客户端返回基准参数;
S506、性能分析客户端根据基准参数生成与游戏客户端的目标游戏场景匹配的至少一个卡顿条件;
S507、若图像帧的数据生成时间满足任一卡顿条件,性能分析客户端确定游戏客户端运行目标游戏场景下的游戏时,在图像帧处发生卡顿;
S508、性能分析客户端将确定发生卡顿的目标图像帧的目标数据生成时间发送给性能分析服务器;
S509、性能分析服务器确定与目标数据生成时间匹配的至少一个函数,至少一个函数包括第一函数和/或第二函数;
S510、性能分析服务器获取发生时间与目标数据生成时间匹配的至少一个渲染需求;
在本申请实施例中,性能分析服务器可以实现对游戏客户端上报的基础信息的实时更新。相应的,性能分析服务器在接收到性能客户端发送的目标图像帧的目标数据生成时间后,可以从基础信息中获取调用时间与目标数据生成时间匹配的各个第一函数以及从基础信息中获取调用时间与目标数据生成时间匹配的各个第二函数,获取到的各个第一函数和获取到的各个第二函数构成至少一个函数,还可以从基础信息中获取发生时间与目标数据生成时间匹配的渲染需求(比如发生时间与目标数据生成时间匹配的GPL指令)。
在本申请实施例中,可以以目标数据生成时间为基准,确定与目标数据生成时间有关的目标时间范围,进而将调用时间位于目标时间范围内的第一函数,确定为调用时间与目标数据生成时间匹配的第一函数,以及将调用时间位于目标时间范围内的第二函数,确定为调用时间与目标数据生成时间匹配的第二函数;以及将发生时间在目标时间范围内的渲染需求,确定为发生时间与目标数据生成时间匹配的渲染需求。
作为本申请实施例中,与目标数据生成时间有关的目标时间范围可以覆盖目标数据生成时间。
以上仅仅是本申请实施例提供的一种获取调用时间与目标数据生成时间匹配的至少一个函数,以及发生时间与目标数据生成时间匹配的至少一个渲染需求的优选方式,有关该过程的具体实现方式,发明人可根据自己的需求进行设置,在此不做限定。
S511、性能分析服务器基于至少一个渲染需求和至少一个函数,分析游戏客户端运行目标游戏场景下的游戏时,在目标图像帧处发生卡顿的原因。
为了便于对本申请实施例提供的一种游戏客户端性分析方法的理解,现对该游戏客户端性能分析方法中的一种基于至少一个渲染需求和至少一个函数,分析游戏客户端运行目标游戏场景下的游戏时,在目标图像帧处发生卡顿的原因的方法进行详细说明,具体请参见图6。
如图6所示,该方法包括:
S601、若至少一个渲染需求中存在目标渲染需求,确定在目标图像帧处发生卡顿的原因包括游戏渲染消耗,目标渲染需求指示高性能开销渲染操作;
游戏客户端在运行目标游戏场景下的游戏时,需要对游戏进行渲染,有些渲染需求指示的渲染操作是高性能开销的渲染操作,高性能开销的渲染操作会会导致游戏运行时出现卡顿的情况,因此,本申请实施例可以对监测到的与目标图像帧的目标数据生成时间匹配的至少一个渲染需求进行检测,判断至少一个渲染需求中是否存在指示高性能开销渲染操作的渲染需求,若存在,则说明游戏客户端在目标图像帧处发生卡顿的原因有可能是指示高性能开销的渲染操作的渲染需求导致的,此时,可以确定游戏客户端在目标图像帧处发生卡顿的原因包括游戏渲染消耗。
S602、若至少一个函数所包括的第二函数中存在目标第二函数,确定在目标图像帧处发生卡顿的原因包括游戏引擎消耗,目标第二函数为高性能开销函数;
游戏客户端在运行目标游戏场景下的游戏时,若调用了调用时间与目标图像帧的目标数据生成时间匹配的至少一个第二函数,如果至少一个第二函数中存在高性能开销函数,则说明游戏客户端在目标图像帧处发生卡顿的原因可能是由游戏引擎消耗导致的,此时,可以确定游戏客户端在目标图像帧处发生卡顿的原因包括游戏引擎消耗。
在本申请实施例中,可以预先设置至少一个目标第二函数,并且预先设置的每个目标第二函数均是高性能开销函数;如果上述至少一个第二函数中存在目标第二函数,则说明至少一个第二函数中存在高性能开销函数。
S603、若至少一个函数所包括的第一函数中存在目标第一函数,确定在目标图像帧处发生卡顿的原因包括游戏客户端的对象创建时间点错误,目标第一函数为用于创建对象的高性能开销函数;
游戏客户端在运行目标游戏场景的游戏时,通常会提前创建对象,尤其是提前创建高性能开销对象,对象创建时通常需要调用游戏客户端脚本中的第一函数,若对象创建时需要调用的游戏客户端脚本中的第一函数中存在高性能开销函数,则可以认为该对象是高性能开销对象。
游戏客户端在运行目标游戏场景下的游戏时,若调用了调用时间与目标图像帧的目标数据生成时间匹配的至少一个第一函数,如果至少一个第一函数中存在高性能开销函数,则说明游戏客户端在目标图像帧处发生卡顿的原因是因为对象创建时间点错误导致的。
在本申请实施例中,可以预先设置至少一个目标第一函数,并且预先设置的每个目标第一函数均是用于创建对象的高性能开销函数;如果上述至少一个第一函数中存在目标第一函数,则说明至少一个第一函数中存在高性能开销函数。
S604、基于游戏客户端的底层运行堆栈信息,从至少一个函数中确定导致在目标图像帧处发生卡顿的目标函数,底层运行堆栈信息表征游戏客户端运行游戏时,所调用的各个第一函数和第二函数之间的调用关系。
在本申请实施例中,游戏客户端运行目标游戏场景下的游戏时,会产生底层运行对战信息,该底层运行堆栈信息表征游戏客户端运行目标游戏场景下的游戏时,所调用的各个第一函数和第二函数之间的调用关系。
性能分析服务器确定与目标数据生成时间匹配的至少一个函数后,可以根据游戏客户端的底层运行堆栈信息,确定至少一个函数中各个函数之间的调用关系,进而根据至少一个函数中各个函数之间的调用关系,确定导致在目标图像帧处出现卡顿情况的目标函数;此时,可以确定游戏客户端在目标图像帧处发生卡顿的原因包括目标函数消耗。
比如,游戏客户端底层堆栈信息表征:游戏客户端运行目标游戏场景下的游戏时,调用函数A、函数B、函数C、函数D和函数E,其中,函数A调用函数B,函数B调用函数C和函数D;函数D调用函数E时,若至少一个函数包括函数B、函数D和函数E;则,可以确定至少一个函数中各个函数的调用关系为函数B调用函数D,函数D调用函数E;此时,可以将函数E作为目标函数,即,可以认为游戏客户端运行目标游戏场景下的游戏时,可能是因为函数E的消耗导致了在目标图像帧处发生卡顿。
更进一步的,为了对本申请实施例的清楚说明,在此对本申请实施例提供的一种游戏客户端性能分析方法中的确定图像帧的数据生成时间是否满足卡顿条件的方法进行详细说明。
在申请实施例中,根据预先设置的与游戏客户端的目标游戏场景对应的基准参数,生成的与游戏客户端的目标游戏场景匹配的至少一个卡顿条件可以包括第一卡顿条件、第二卡顿条件和/或第三卡顿条件。
参见图7为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第一卡顿条件的方法流程图。
如图7所示,该方法包括:
S701、确定游戏客户端显示的与图像帧相邻的上一图像帧;
S702、检测图像帧的数据生成时间是否长于上一图像帧的数据生成时间;若图像帧的数据生成时间长于上一图像帧的数据生成时间,执行步骤S703;若图像帧的数据生成时间不长于上一图像帧的数据生成时间,执行步骤S706;
在本申请实施例中,图像帧的数据生成时间包括图像帧的数据生成时长;比较图像帧的数据生成时长是否长于上一图像帧的数据生成时长,若是,确定图像帧的数据生成时间长于上一图像帧的数据生成时间,进而执行步骤S703;若否,确定图像帧的数据生成时间不长于上一图像帧的数据生成时间,进而执行步骤S706。
S703、计算图像帧和上一图像帧的数据生成时间之间的时间差;
在本申请实施例中,可以将图像帧的数据生成时长减去上一图像帧的数据生成时长所得到的结果,作为图像帧和上一图像帧的数据生成时间之间的时间差。
S704、检测时间差是否大于第一阈值;若时间差大于第一阈值,执行步骤S705;若时间差不大于第一阈值,执行步骤S706;
在本申请实施例中,第一卡顿条件中包括第一阈值,检测时间差是否大于该第一阈值,若是,则执行步骤S705;若否,则执行步骤S706。
S705、确定图像帧的数据生成时间满足第一卡顿条件;
S706、确定图像帧的数据生成时间不满足第一卡顿条件。
在本申请实施例中,在至少一个卡顿条件包括第一卡顿条件时,所获取到的与游戏客户端的目标游戏场景对应的基准参数中包括第一阈值。
若生成的至少一个卡顿条件中包括第一卡顿条件,则需要在性能分析客户端中预先设置与第一卡顿条件对应的第一卡顿条件模型,该第一卡顿条件模型中包括一个变量(该变量可以暂称为第一变量);相应的,性能分析客户端所获取到的基准参数中包括用于赋值给第一变量的第一阈值(该第一阈值可以看成是用于赋值给第一变量的参数值),性能分析客户端在获取到基准参数后,会将该第一阈值赋值给第一卡顿条件模型中的第一变量,以得到第一卡顿条件。
参见图8为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第二卡顿条件的方法流程图。
如图8所示,该方法包括:
S801、获取与图像帧最近相邻的第一预设数量个历史图像帧;
比如,若游戏客户端中图像帧的显示顺序依次是图像帧1、图像帧2、图像帧3、图像帧4、图像帧5、图像帧6、图像帧7和图像帧8时;若第一预设数量个为3时,如果获取与图像帧5最近相邻的3个历史图像帧时,这3个历史图像帧分别为图像帧4、图像帧3和图像帧2。
S802、检测第一预设数量个历史图像帧中是否至少存在第二预设数量个目标历史图像帧;若第一预设数量个历史图像帧中至少存在第二预设数量个目标历史图像帧,执行步骤S803;若第一预设数量个历史图像帧中未至少存在第二预设数量个目标历史图像帧,执行步骤S807;
在获取到第一预设数量个历史图像帧后,需要确定该第一预设数量个历史图像帧中是否存在第二预设数量个目标历史图像帧;其中,目标历史图像帧的数据生成时间长于与其相邻的上一图像帧、且目标历史图像帧和与其相邻的上一图像帧的数据生成时间之间的时间差大于第二阈值。
其中,目标历史图像帧和与其相邻的上一图像帧的数据生成时间之间的时间差可以为目标历史图像帧的数据生成时长减去上一图像帧的数据生成时长的结果。
比如,若游戏客户端中图像帧的显示顺序依次是图像帧1、图像帧2、图像帧3、图像帧4、图像帧5、图像帧6、图像帧7和图像帧8时;若第一预设数量个为3时,如果获取与图像帧5最近相邻的3个历史图像帧时,这3个历史图像帧分别为图像帧4、图像帧3和图像帧2;若第二预设数量个为2时,则需要确定图像帧4、图像帧3和图像帧2中是否至少存在2个目标历史图像帧。
其中,当图像帧4的数据生成时间长于图像帧3的数据生成时间,且图像帧4和数据帧3的数据生成时间之间的时间差大于第二阈值时,才可以确定图像帧4为目标历史图像帧,否则,确定图像帧4不为目标历史图像帧。
当图像帧3的数据生成时间长于图像帧2的数据生成时间,且图像帧3和数据帧2的数据生成时间之间的时间差大于第二阈值时,才可以确定图像帧3为目标历史图像帧,否则,确定图像帧3不为目标历史图像帧。
当图像帧2的数据生成时间长于图像帧1的数据生成时间,且图像帧2和数据帧1的数据生成时间之间的时间差大于第二阈值时,才可以确定图像帧2为目标历史图像帧,否则,确定图像帧2不为目标历史图像帧。
进一步的,如果确定图像帧4、图像帧3和图像帧2中至少存在2个目标历史图像帧,则可以确定与图像帧最近相邻的第一预设数量个历史图像帧中至少存在第二预设数量个目标历史图像帧,此时执行步骤S803;如果确定图像帧4、图像帧3和图像帧2中未至少存在2个目标历史图像帧,则可以确定与图像帧最近相邻的第一预设数量个历史图像帧中未至少存在第二预设数量个目标历史图像帧,此时执行步骤S807。
S803、获取与图像帧最近相邻的至少一个历史图像帧,至少一个历史图像帧的数据生成时间的和不小于第三阈值,且至少一个历史图像帧的数据生成时间的和减去最早数据生成时间的结果小于第三阈值,最早数据生成时间为至少一个历史图像帧中最早一个历史图像帧的数据生成时间;
在本申请实施例中,在确定与图像帧最近相邻的第一预设数量个历史图像帧中至少存在第二预设数量个目标历史图像帧时,可以获取与该图像帧最近相邻的至少一个历史图像帧,继续以上述实例为例,则获取与图像帧5最近相邻的至少一个历史图像帧;至少一个历史图像帧中各个历史图像帧的数据生成时间的总和不小于第三阈值,且至少一个历史图像帧中各个历史图像帧的数据生成时间的总和减去最早数据生成时间后,所得到的结果小于第三阈值。其中,最早数据生成时间为至少一个历史图像帧中最早一个历史图像帧的数据生成时间。即,最早数据生成时间为至少一个历史图像帧中最早一个在游戏客户端显示的图像帧的数据生成时间。
在本申请实施例中,可以将至少一个图像帧中各个图像帧的数据生成时长的加和结果作为至少一个图像帧的数据生成时间的总和。比如,若至少一个图像帧包括图像帧a、图像帧b和图像帧c,则至少一个图像帧的数据生成时间的总和=图像帧a的数据生成时长+图像帧b的数据生成时长+图像帧c的数据生成时长。
S804、检测至少一个历史图像帧中各个目标历史图像帧的数据生成时间的和是否大于第四阈值;若至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和大于第四阈值,执行步骤S805;若至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和不大于第四阈值,执行步骤S807;
在本申请实施例中,确定至少一个历史图像帧后,可以确定至少一个历史图像帧中所包括的各个目标历史图像帧,并计算所确定的各个目标历史图像帧的数据生成时间的总和;进而检测至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和是否大于第四阈值,若是,执行步骤S805,若否执行步骤S807。
S805、检测至少一个历史图像帧中历史图像帧的数据生成时间平均值是否大于第五阈值;若至少一个历史图像帧中历史图像帧的数据生成时间平均值大于第五阈值,执行步骤S806;若至少一个历史图像帧中历史图像帧的数据生成时间平均值不大于第五阈值,执行步骤S807;
在本申请实施例,可以计算至少一个历史图像帧中各个历史图像帧的数据生成时间的总和,并将该总和除以至少一个历史图像帧中历史图像帧的数量所得到的结果,作为至少一个历史图像帧中历史图像帧的数据生成时间平均值;比较至少一个历史图像帧中历史图像帧的数据生成时间平均值是否大于第五阈值,若是,执行步骤S806;若否,执行步骤S807。
S806、确定图像帧的数据生成时间满足第二卡顿条件;
S807、确定图像帧的数据生成时间不满足第二卡顿条件。
在本申请实施例中,在至少一个卡顿条件包括第一卡顿条件时,所获取到的与游戏客户端的目标游戏场景对应的基准参数中包括第一阈值。
若生成的至少一个卡顿条件中包括第二卡顿条件,则需要在性能分析客户端中预先设置与第二卡顿条件对应的第二卡顿条件模型,该第二卡顿条件模型中包括至少一个变量;相应的,性能分析客户端所获取到的基准参数中包括分别用于赋值给至少一个变量中每个变量的参数值,性能分析客户端在获取到基准参数后,会将该基准参数中分别用于赋值给至少一个变量中每个变量的参数值赋值给相应的变量,以得到第二卡顿条件。
在本申请实施例中,在至少一个卡顿条件包括第二卡顿条件时,预先设置的与游戏客户端的目标游戏场景对应的基准参数包括第一预设数量个、第二预设数量个、第二阈值、第三阈值、第四阈值和/或第五阈值。若基准参数包括第一预设数量个、第二预设数量个、第二阈值、第三阈值、第四阈值和第五阈值时,第二卡顿条件模型中包括的至少一个变量的个数为6个,分别为与第一预设数量个对应的变量、与第二预设数量个对应的变量、与第二阈值对应的变量、与第三阈值对应的变量、与第四阈值对应的变量,以及与第五阈值对应的变量。
参见图9为本申请实施例提供的一种确定图像帧的数据生成时间是否满足第三卡顿条件的方法流程图。
如图9所示,该方法包括:
S901、获取与图像帧最近相邻的第三预设数量个历史图像帧;
S902、确定第三预设数量个历史图像帧中每个历史图像帧的数据生成时间是否均不小于第六阈值;若是,执行步骤S903;若否执行步骤S904;
在本申请实施例中,检测历史图像帧的数据生成时长是否小于第六阈值;若历史图像帧的数据生成时长不小于第六阈值,确定历史图像帧的数据生成时间不小于第六阈值,执行步骤S903;若历史图像帧的数据生成时长小于第六阈值,确定历史图像帧的数据生成时间小于第六阈值,执行步骤S904。
S903、确定图像帧的数据生成时间满足第三卡顿条件;
S904、确定图像帧的数据生成时间不满足第三卡顿条件。
在本申请实施例中,在至少一个卡顿条件包括第三卡顿条件时,所获取到的与游戏客户端的目标游戏场景对应的基准参数中包括第六阈值。
若生成的至少一个卡顿条件中包括第三卡顿条件,则需要在性能分析客户端中预先设置与第三卡顿条件对应的第三卡顿条件模型,该第三卡顿条件模型中包括一个变量(该变量可以暂称为第二变量);相应的,性能分析客户端所获取到的基准参数中包括用于赋值给第二变量的第六阈值(该第六阈值可以看成是用于赋值给第二变量的参数值),性能分析客户端在获取到基准参数后,会将该第六阈值赋值给第三卡顿条件模型中的第二变量,以得到第三卡顿条件。
在本申请实施例中,基准参数中用于赋值给第一卡顿条件模型的参数值、用于赋值给第二卡顿条件模型的参数值和/或用于赋值给第三卡顿条件模型的参数值,可以为基于推荐系统评测指标(比如,准确率、召回率、)进行测试所获得的最优值。
进一步的,参见图1本申请实施例提供的一种适用于本申请实施例提供的一种游戏客户端性能分析方法的游戏客户端性能分析系统还可以包括网络服务器13以及数据库14。
本申请实施例中,性能分析服务器检测到游戏客户端在目标图像帧处发生卡顿的原因后,可以将与该目标图像帧对应的数据信息存储至数据库14。与目标图像帧对应的数据信息指示该目标图像帧以及游戏客户端在目标游戏场景下在该目标图像帧处发生卡顿的原因。
在本申请实施例中,并不限于数据库中仅存储目标图像帧的数据信息,也不限于目标图像帧的数据信息仅指示目标图像帧以及目标图像帧处发生卡顿的原因。有关数据库中具体存储的内容可以根据发明人的需求进行设置,在此不做限定。
进一步的,性能分析客户端可以基于网络服务器向用户提供查询功能,在用户向性能分析客户端发送数据查询请求后,由网络服务器基于数据信息确定与数据查询请求对应的查询结果,并将查询结果返回性能分析客户端,以便于用户通过性能分析查询结果。
比如,数据查询请求可以指示查询游戏客户端运行目标游戏场景下的游戏时产生卡顿的各个目标图像帧、数据查询请求可以指示查询任一目标图像帧发生卡顿的原因、数据查询请求可以指示查询目标图像帧发生卡顿的时间等等。
以上仅仅是本申请实施例提供的数据查询请求的优选内容,有关数据查询请求的具体内容,发明人可根据自己的需求进行设置,在此不做限定。
本申请可以在游戏客户端运行游戏时,实时监测其所发生的卡顿情况,进而由游戏客户端运行游戏时所发生的卡顿情况体现游戏客户端的真实性能。并且,本申请是通过对图像帧中用于在游戏客户端中生成的数据内容的生成时间的监测(即,图像帧的数据生成时间),实现的对卡顿情况的监测,图像帧的数据生成时间仅与游戏客户端的性能相关,不受网络传输等情况的影响,因此,提高了卡顿情况的监测结果与游戏客户端的性能的关联性,保证了基于游戏客户端卡顿情况监测结果所体现出的游戏客户端的真实性能的准确性。并且,本申请实施例还可以在发现游戏客户端中图像帧发生卡顿时,确定图像帧发生卡顿的原因,便于用户发现原因解决问题。
图10为本申请实施例提供的一种游戏客户端性能分析装置的结构示意图。
如图10所示,该装置包括:
游戏客户端确定单元101,用于接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
注入单元102,用于触发启动游戏客户端进程,在游戏客户端脚本编译时在游戏客户端脚本中注入第一卡顿监测逻辑,第一卡顿监测逻辑用于在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,以及,用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在游戏客户端中生成的数据内容的生成时间;
卡顿条件生成单元103,用于根据预先设置的与游戏客户端的目标游戏场景对应的基准参数,生成与游戏客户端的目标游戏场景匹配的至少一个卡顿条件;
卡顿确定单元104,用于若图像帧的数据生成时间满足任一卡顿条件,确定游戏客户端运行目标游戏场景下的游戏时,在图像帧处发生卡顿。
在本申请实施例中,优选的,第一卡顿逻辑还用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端调用的游戏客户端脚本中的第一函数以及第一函数的调用时间。
注入单元,还用于在为游戏客户端提供运行环境的游戏引擎中注入第二卡顿监测逻辑以及在游戏客户端底层注入第三卡顿监测逻辑;其中,第二卡顿逻辑用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏引擎所调用的第二函数以及第二函数的调用时间;第三卡顿监测逻辑用于在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端对游戏的渲染需求以及渲染需求的发生时间。
进一步的,本申请实施例提供的一种游戏客户端性能分析装置还包括:
目标数据时间段确定单元,用于确定目标图像帧的目标数据生成时间段,目标图像帧为确定发生卡顿的图像帧;
函数获取单元,用于获取调用时间与目标数据生成时间匹配的至少一个函数,至少一个函数包括第一函数和/或第二函数;
渲染需求获取单元,用于获取发生时间与目标数据生成时间匹配的至少一个渲染需求;
卡顿原因分析单元,用于基于至少一个渲染需求和至少一个函数,分析游戏客户端运行目标游戏场景下的游戏时,在目标图像帧处发生卡顿的原因。
在本申请实施例中,卡顿原因分析单元包括:
第一分析单元,用于若至少一个渲染需求中存在目标渲染需求,确定在目标图像帧处发生卡顿的原因包括游戏渲染消耗,目标渲染需求指示高性能开销渲染操作;
第二分析单元,用于若至少一个函数所包括的第二函数中存在目标第二函数,确定在目标图像帧处发生卡顿的原因包括游戏引擎消耗,目标第二函数为高性能开销函数;
第三分析单元,用于若至少一个函数所包括的第一函数中存在目标第一函数,确定在目标图像帧处发生卡顿的原因包括游戏客户端的对象创建时间点错误,目标第一函数为用于创建对象的高性能开销函数;
第四分析单元,用于基于游戏客户端的底层运行堆栈信息,从至少一个函数中确定导致在目标图像帧处发生卡顿的目标函数,底层运行堆栈信息表征游戏客户端运行游戏时,所调用的各个第一函数和第二函数之间的调用关系。
本申请实施例提供的一种游戏客户端性能分析装置还包括卡顿条件分析单元,在至少一个卡顿条件包括第一卡顿条件时,卡顿条件分析单元用于确定图像帧的数据生成时间是否满足第一卡顿条件。此时,该卡顿条件分析单元具体用于:
确定游戏客户端显示的与图像帧相邻的上一图像帧;
检测图像帧的数据生成时间是否长于上一图像帧的数据生成时间;
若图像帧的数据生成时间长于上一图像帧的数据生成时间,计算图像帧和上一图像帧的数据生成时间之间的时间差;
检测时间差是否大于第一阈值;
若时间差大于第一阈值,确定图像帧的数据生成时间满足第一卡顿条件;
其中,在至少一个卡的条件包括第一卡顿条件时,预先设置的与游戏客户端的目标游戏场景对应的基准参数包括第一阈值。
在至少一个卡顿条件包括第二卡顿条件时,本申请实施例提供的一种游戏客户端性能分析装置中的卡顿条件分析单元用于确定图像帧的数据生成时间是否满足第二卡顿条件。此时,该卡顿条件分析单元具体用于:
获取与图像帧最近相邻的第一预设数量个历史图像帧;
检测第一预设数量个历史图像帧中是否至少存在第二预设数量个目标历史图像帧,目标历史图像帧的数据生成时间长于与其相邻的上一图像帧、且目标历史图像帧和与其相邻的上一图像帧的数据生成时间之间的时间差大于第二阈值;
若第一预设数量个历史图像帧中至少存在第二预设数量个目标历史图像帧,获取与图像帧相邻的至少一个历史图像帧,至少一个历史图像帧的数据生成时间的总和不小于第三阈值,且至少一个历史图像帧的数据生成时间的总和减去最早数据生成时间的结果小于第三阈值,最早数据生成时间为至少一个历史图像帧中最早一个历史图像帧的数据生成时间;
检测至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和是否大于第四阈值;
若至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和大于第四阈值,检测至少一个历史图像帧中历史图像帧的数据生成时间平均值是否大于第五阈值;
若至少一个历史图像帧中历史图像帧的数据生成时间平均值大于第五阈值,确定图像帧的数据生成时间满足第二卡顿条件;
其中,在至少一个卡顿条件包括第二卡顿条件时,预先设置的与游戏客户端的目标游戏场景对应的基准参数包括第一预设数量个、第二预设数量个、第二阈值、第三阈值、第四阈值和/或第五阈值。
在至少一个卡顿条件包括第三卡顿条件时,本申请实施例提供的一种游戏客户端性能分析装置中的卡顿条件分析单元用于确定图像帧的数据生成时间是否满足第三卡顿条件。此时,该卡顿条件分析单元具体用于:
获取与图像帧最近相邻的第三预设数量个历史图像帧;
确定第三预设数量个历史图像帧中每个历史图像帧的数据生成时间是否均不小于第六阈值;
若是,确定图像帧的数据生成时间满足第三卡顿条件;
其中,在至少一个卡顿条件包括第三卡顿条件时,预先设置的与游戏客户端的目标游戏场景对应的基准参数包括第三预设数量个和/或第六阈值。
更进一步的,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述实施例所涉及到的游戏客户端性能分析方法。
有关本申请实施例提供的存储介质中存储的程序的详细描述可参照上述实施例,在此不做赘述。
本申请提供一种游戏客户端性能分析方法、装置、终端及存储介质,通过触发启动游戏客户端进程,在游戏客户端脚本中注入第一卡顿监测逻辑,以在游戏客户端运行游戏之前触发游戏客户端确定目标游戏场景,并在游戏客户端运行目标游戏场景下的游戏时,监测游戏客户端中显示的图像帧的数据生成时间,进而在图像帧的数据生成时间满足根据预先设置的与游戏客户端的目标游戏场景匹配的基准参数生成的任一卡顿条件时,确定游戏客户端运行游戏时在该图像帧处发生了卡顿。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的核心思想或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种游戏客户端性能分析方法,其特征在于,包括:
接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
触发启动所述游戏客户端进程,在所述游戏客户端脚本编译时在所述游戏客户端脚本中注入第一卡顿监测逻辑,所述第一卡顿监测逻辑用于在所述游戏客户端运行游戏之前触发所述游戏客户端确定目标游戏场景,以及,用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在所述游戏客户端中生成的数据内容的生成时间;所述数据生成时间包括数据生成开始时间点、数据生成结束时间点以及数据生成时长;
根据预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数,生成与所述游戏客户端的所述目标游戏场景匹配的至少一个卡顿条件;
若所述图像帧的数据生成时间满足任一所述卡顿条件,确定所述游戏客户端运行所述目标游戏场景下的游戏时,在所述图像帧处发生卡顿。
2.根据权利要求1所述的方法,其特征在于,所述第一卡顿逻辑还用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端调用的所述游戏客户端脚本中的第一函数以及所述第一函数的调用时间,该方法还包括:
在为所述游戏客户端提供运行环境的游戏引擎中注入第二卡顿监测逻辑以及在所述游戏客户端底层注入第三卡顿监测逻辑;
其中,所述第二卡顿逻辑用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏引擎所调用的第二函数以及所述第二函数的调用时间;所述第三卡顿监测逻辑用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端对所述游戏的渲染需求以及所述渲染需求的发生时间。
3.根据权利要求2所述的方法,其特征在于,还包括:
确定目标图像帧的目标数据生成时间段,目标图像帧为确定发生卡顿的图像帧;
获取调用时间与目标数据生成时间匹配的至少一个函数,至少一个函数包括第一函数和/或第二函数;
获取发生时间与所述目标数据生成时间匹配的至少一个渲染需求;
基于所述至少一个渲染需求和所述至少一个函数,分析所述游戏客户端运行所述目标游戏场景下的游戏时,在所述目标图像帧处发生卡顿的原因。
4.根据权利要求3所述的方法,其特征在于,所述基于所述至少一个渲染需求和所述至少一个函数,分析所述游戏客户端运行所述目标游戏场景下的游戏时,在所述目标图像帧处发生卡顿的原因,包括:
若所述至少一个渲染需求中存在目标渲染需求,确定在所述目标图像帧处发生卡顿的原因包括游戏渲染消耗,所述目标渲染需求指示高性能开销渲染操作;
若所述至少一个函数所包括的第二函数中存在目标第二函数,确定在所述目标图像帧处发生卡顿的原因包括游戏引擎消耗,所述目标第二函数为高性能开销函数;
若所述至少一个函数所包括的第一函数中存在目标第一函数,确定在所述目标图像帧处发生卡顿的原因包括所述游戏客户端的对象创建时间点错误,所述目标第一函数为用于创建对象的高性能开销函数;
基于所述游戏客户端的底层运行堆栈信息,从所述至少一个函数中确定导致在所述目标图像帧处发生卡顿的目标函数,所述底层运行堆栈信息表征所述游戏客户端运行游戏时,所调用的各个第一函数和第二函数之间的调用关系。
5.根据权利要求1所述的方法,其特征在于,所述至少一个卡顿条件包括第一卡顿条件,确定所述图像帧的数据生成时间是否满足所述第一卡顿条件的方式包括:
确定所述游戏客户端显示的与所述图像帧相邻的上一图像帧;
检测所述图像帧的数据生成时间是否长于所述上一图像帧的数据生成时间;
若所述图像帧的数据生成时间长于所述上一图像帧的数据生成时间,计算所述图像帧和所述上一图像帧的数据生成时间之间的时间差;
检测所述时间差是否大于第一阈值;
若所述时间差大于所述第一阈值,确定所述图像帧的数据生成时间满足所述第一卡顿条件;
其中,在所述至少一个卡的条件包括所述第一卡顿条件时,所述预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数包括所述第一阈值。
6.根据权利要求1所述的方法,其特征在于,所述至少一个卡顿条件包括第二卡顿条件,确定所述图像帧的数据生成时间是否满足所述第二卡顿条件的方式包括:
获取与所述图像帧最近相邻的第一预设数量个历史图像帧;
检测所述第一预设数量个历史图像帧中是否至少存在第二预设数量个目标历史图像帧,所述目标历史图像帧的数据生成时间长于与其相邻的上一图像帧、且所述目标历史图像帧和与其相邻的上一图像帧的数据生成时间之间的时间差大于第二阈值;
若所述第一预设数量个历史图像帧中至少存在第二预设数量个目标历史图像帧,获取与所述图像帧相邻的至少一个历史图像帧,所述至少一个历史图像帧的数据生成时间的总和不小于第三阈值,且所述至少一个历史图像帧的数据生成时间的总和减去最早数据生成时间的结果小于所述第三阈值,所述最早数据生成时间为所述至少一个历史图像帧中最早一个历史图像帧的数据生成时间;
检测所述至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和是否大于第四阈值;
若所述至少一个历史图像帧中各个目标历史图像帧的数据生成时间的总和大于所述第四阈值,检测所述至少一个历史图像帧中历史图像帧的数据生成时间平均值是否大于第五阈值;
若所述至少一个历史图像帧中历史图像帧的数据生成时间平均值大于所述第五阈值,确定所述图像帧的数据生成时间满足所述第二卡顿条件;
其中,在所述至少一个卡顿条件包括所述第二卡顿条件时,所述预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数包括第一预设数量个、第二预设数量个、第二阈值、所述第三阈值、第四阈值和/或第五阈值。
7.根据权利要求1所述的方法,其特征在于,所述至少一个卡顿条件包括第三卡顿条件,确定所述图像帧的数据生成时间是否满足第三卡顿条件的方式包括:
获取与所述图像帧最近相邻的第三预设数量个历史图像帧;
确定所述第三预设数量个历史图像帧中每个历史图像帧的数据生成时间是否均不小于第六阈值;
若是,确定所述图像帧的数据生成时间满足所述第三卡顿条件;
其中,在所述至少一个卡顿条件包括所述第三卡顿条件时,所述预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数包括所述第三预设数量个和/或所述第六阈值。
8.一种游戏客户端性能分析装置,其特征在于,包括:
游戏客户端确定单元,用于接收卡顿分析请求,确定待进行卡顿分析的游戏客户端;
注入单元,用于触发启动所述游戏客户端进程,在所述游戏客户端脚本编译时在所述游戏客户端脚本中注入第一卡顿监测逻辑,所述第一卡顿监测逻辑用于在所述游戏客户端运行游戏之前触发所述游戏客户端确定目标游戏场景,以及,用于在所述游戏客户端运行所述目标游戏场景下的游戏时,监测所述游戏客户端中显示的每个图像帧的数据生成时间,图像帧的数据生成时间指示图像帧中用于在所述游戏客户端中生成的数据内容的生成时间;所述数据生成时间包括数据生成开始时间点、数据生成结束时间点以及数据生成时长;
卡顿条件生成单元,用于根据预先设置的与所述游戏客户端的所述目标游戏场景对应的基准参数,生成与所述游戏客户端的所述目标游戏场景匹配的至少一个卡顿条件;
卡顿确定单元,用于若所述图像帧的数据生成时间满足任一所述卡顿条件,确定所述游戏客户端运行所述目标游戏场景下的游戏时,在所述图像帧处发生卡顿。
9.一种终端,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-7任意一项所述的游戏客户端性能分析方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于在被处理器执行时实现如权利要求1-7任意一项所述的游戏客户端性能分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910313908.0A CN110300327B (zh) | 2019-04-18 | 2019-04-18 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910313908.0A CN110300327B (zh) | 2019-04-18 | 2019-04-18 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110300327A CN110300327A (zh) | 2019-10-01 |
CN110300327B true CN110300327B (zh) | 2021-06-15 |
Family
ID=68026493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910313908.0A Active CN110300327B (zh) | 2019-04-18 | 2019-04-18 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110300327B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110781084B (zh) * | 2019-10-21 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 卡顿识别参数确定方法和装置、存储介质及电子装置 |
CN110812835B (zh) * | 2019-11-06 | 2021-07-16 | 腾讯科技(深圳)有限公司 | 云游戏的检测方法和装置、存储介质及电子装置 |
CN110825466B (zh) * | 2019-11-11 | 2021-11-02 | 腾讯科技(深圳)有限公司 | 一种程序卡顿的处理方法以及卡顿处理装置 |
CN111298434B (zh) * | 2020-02-25 | 2021-08-06 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置、设备及存储介质 |
CN111973994B (zh) * | 2020-09-08 | 2024-08-23 | 网易(杭州)网络有限公司 | 游戏配置的调整方法、装置、设备及存储介质 |
CN111984544B (zh) * | 2020-09-08 | 2024-03-22 | 网易(杭州)网络有限公司 | 设备性能测试方法、装置、电子设备及存储介质 |
CN112190926B (zh) * | 2020-10-15 | 2021-08-20 | 段绍森 | 网络游戏场景下的数据流量处理方法及网游服务器 |
CN112230758B (zh) | 2020-11-09 | 2023-11-17 | 腾讯科技(深圳)有限公司 | 帧率调整方法、装置、设备及计算机可读存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722650A (zh) * | 2012-05-31 | 2012-10-10 | 北京像素软件科技股份有限公司 | 应用于游戏场景中游戏速度的处理方法和装置 |
CN105282622A (zh) * | 2015-10-20 | 2016-01-27 | 海信集团有限公司 | 一种切换场景的方法和装置 |
CN106375343A (zh) * | 2016-10-31 | 2017-02-01 | 上海斐讯数据通信技术有限公司 | 客户端、服务器、交互通讯系统以及通讯方式 |
CN106991034A (zh) * | 2017-04-01 | 2017-07-28 | 奇酷互联网络科技(深圳)有限公司 | 一种监控卡顿的方法和设备以及移动终端 |
CN107102936A (zh) * | 2017-05-27 | 2017-08-29 | 腾讯科技(深圳)有限公司 | 一种流畅度的评估方法和移动终端以及存储介质 |
CN107193678A (zh) * | 2017-04-28 | 2017-09-22 | 北京小米移动软件有限公司 | 卡顿原因确定方法、装置及存储介质 |
CN107308641A (zh) * | 2017-06-07 | 2017-11-03 | 北京凯罗天下科技有限公司 | 一种游戏对象管理方法、装置和移动终端 |
CN107451066A (zh) * | 2017-08-22 | 2017-12-08 | 网易(杭州)网络有限公司 | 卡顿处理方法和装置、存储介质、终端 |
CN107544842A (zh) * | 2017-08-25 | 2018-01-05 | 广东欧珀移动通信有限公司 | 应用程序处理方法和装置、计算机设备、存储介质 |
CN108022286A (zh) * | 2017-11-30 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 画面渲染方法、装置及存储介质 |
CN108379832A (zh) * | 2018-01-29 | 2018-08-10 | 珠海金山网络游戏科技有限公司 | 一种游戏同步方法和装置 |
CN108427630A (zh) * | 2018-03-15 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 性能信息获取方法、装置、终端及计算机可读存储介质 |
CN108449644A (zh) * | 2018-03-20 | 2018-08-24 | 上海爱友信息科技有限公司 | 多人同屏实时交互游戏中保持网络稳定的方法及系统 |
CN108721898A (zh) * | 2018-06-01 | 2018-11-02 | 深圳市腾讯网络信息技术有限公司 | 帧率的确定方法和装置、存储介质、电子装置 |
CN109621413A (zh) * | 2018-12-28 | 2019-04-16 | 腾讯科技(深圳)有限公司 | 游戏画面的渲染显示方法、装置、终端及存储介质 |
CN109634861A (zh) * | 2018-12-11 | 2019-04-16 | 网易(杭州)网络有限公司 | 网络游戏协议的测试方法、装置、处理器及终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065979B2 (en) * | 2005-07-01 | 2015-06-23 | The Invention Science Fund I, Llc | Promotional placement in media works |
-
2019
- 2019-04-18 CN CN201910313908.0A patent/CN110300327B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102722650A (zh) * | 2012-05-31 | 2012-10-10 | 北京像素软件科技股份有限公司 | 应用于游戏场景中游戏速度的处理方法和装置 |
CN105282622A (zh) * | 2015-10-20 | 2016-01-27 | 海信集团有限公司 | 一种切换场景的方法和装置 |
CN106375343A (zh) * | 2016-10-31 | 2017-02-01 | 上海斐讯数据通信技术有限公司 | 客户端、服务器、交互通讯系统以及通讯方式 |
CN106991034A (zh) * | 2017-04-01 | 2017-07-28 | 奇酷互联网络科技(深圳)有限公司 | 一种监控卡顿的方法和设备以及移动终端 |
CN107193678A (zh) * | 2017-04-28 | 2017-09-22 | 北京小米移动软件有限公司 | 卡顿原因确定方法、装置及存储介质 |
CN107102936A (zh) * | 2017-05-27 | 2017-08-29 | 腾讯科技(深圳)有限公司 | 一种流畅度的评估方法和移动终端以及存储介质 |
CN107308641A (zh) * | 2017-06-07 | 2017-11-03 | 北京凯罗天下科技有限公司 | 一种游戏对象管理方法、装置和移动终端 |
CN107451066A (zh) * | 2017-08-22 | 2017-12-08 | 网易(杭州)网络有限公司 | 卡顿处理方法和装置、存储介质、终端 |
CN107544842A (zh) * | 2017-08-25 | 2018-01-05 | 广东欧珀移动通信有限公司 | 应用程序处理方法和装置、计算机设备、存储介质 |
CN108022286A (zh) * | 2017-11-30 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 画面渲染方法、装置及存储介质 |
CN108379832A (zh) * | 2018-01-29 | 2018-08-10 | 珠海金山网络游戏科技有限公司 | 一种游戏同步方法和装置 |
CN108427630A (zh) * | 2018-03-15 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 性能信息获取方法、装置、终端及计算机可读存储介质 |
CN108449644A (zh) * | 2018-03-20 | 2018-08-24 | 上海爱友信息科技有限公司 | 多人同屏实时交互游戏中保持网络稳定的方法及系统 |
CN108721898A (zh) * | 2018-06-01 | 2018-11-02 | 深圳市腾讯网络信息技术有限公司 | 帧率的确定方法和装置、存储介质、电子装置 |
CN109634861A (zh) * | 2018-12-11 | 2019-04-16 | 网易(杭州)网络有限公司 | 网络游戏协议的测试方法、装置、处理器及终端 |
CN109621413A (zh) * | 2018-12-28 | 2019-04-16 | 腾讯科技(深圳)有限公司 | 游戏画面的渲染显示方法、装置、终端及存储介质 |
Non-Patent Citations (1)
Title |
---|
新显卡驱动带来更大变化AMD召开年终新驱动技术分享;刘骏;《计算机与网络》;20190404;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110300327A (zh) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110300327B (zh) | 一种游戏客户端性能分析方法、装置、终端及存储介质 | |
CN107666506B (zh) | 推送结果预测方法、装置、计算机设备和存储介质 | |
CN104380769B (zh) | 一种信息提醒的方法、装置及电子终端 | |
KR20140091555A (ko) | 웹 페이지 렌더링 시간 측정 기법 | |
KR20200002843A (ko) | 모니터링 시스템에서 발생하는 경보에 대한 기계 학습식 결정 안내 기법 | |
US20120331128A1 (en) | Method and a system for analysing impact of changes to content of a website | |
CN109873752B (zh) | 通信群组内的机器人互动方法、装置、存储介质和设备 | |
CN107222331A (zh) | 分布式应用系统性能的监控方法、装置、存储介质及设备 | |
US9880879B1 (en) | Identifying task instance outliers based on metric data in a large scale parallel processing system | |
CN109697247B (zh) | 一种数据准确性的检测方法及装置 | |
CN115315922A (zh) | 检测指示网络操作特性的度量并基于检测到的异常进行识别和控制 | |
CN106933822B (zh) | 一种内容推荐方法及装置 | |
US10255887B2 (en) | Intensity of interest evaluation device, method, and computer-readable recording medium | |
CN112948223B (zh) | 一种监测运行情况的方法和装置 | |
US10848577B2 (en) | Computing environment modification based on an impact curve | |
CN115934179B (zh) | 业务功能控制方法及设备 | |
CN111611521A (zh) | 一种流量作弊的监测方法、装置、电子设备及存储介质 | |
CN110719367A (zh) | 一种云手机好友推荐方法、装置、设备及存储介质 | |
US10809887B2 (en) | Evaluating user interface efficiency | |
CN110209563A (zh) | 试题测评监管方法、电子设备及计算机存储介质 | |
CN110704614A (zh) | 对应用中的用户群类型进行预测的信息处理方法及装置 | |
CN114489461B (zh) | 触控响应方法、装置、设备及存储介质 | |
CN110502416A (zh) | 应用卡顿检测方法、装置、计算机设备及可读介质 | |
CN113221042A (zh) | 网页操作过程记录方法、装置、电子设备及计算机可读介质 | |
CN113377602A (zh) | 一种业务运行监测方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |