首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 软件包 / 软件组件 / 插件 / 一种游戏性能监控方法、装置、系统及存储介质

一种游戏性能监控方法、装置、系统及存储介质

阅读:712发布:2020-05-08

专利汇可以提供一种游戏性能监控方法、装置、系统及存储介质专利检索,专利查询,专利分析的服务。并且本 发明 涉及计算机技术领域,具体是一种游戏性能监控方法、装置、系统及存储介质,所述方法包括:游戏客户端获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点 位置 信息的探针,以及,封装有具有性能 数据采集 功能的第一 插件 和具有性能数据发送功能的第二插件;当与所述待监控的数据信息对应的探针被触发时,所述第一插件采集与所述待监控的数据信息对应的性能数据;所述第二插件将所述性能数据发送至后台 服务器 ;所述后台服务器对所述性能数据进行分析,得到分析报告。本发明的游戏性能监控方法能够降低游戏采集过程对游戏客户端性能的影响、提高性能监控的准确性。,下面是一种游戏性能监控方法、装置、系统及存储介质专利的具体信息内容。

1.一种游戏性能监控方法,其特征在于,包括:
游戏客户端获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
当与所述待监控的数据信息对应的探针被触发时,所述第一插件采集与所述待监控的数据信息对应的性能数据;
所述第二插件将所述性能数据发送至后台服务器
所述后台服务器对所述性能数据进行分析,得到分析报告。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述后台服务器获取监控客户端发送的性能查看指令,所述性能查看指令包括待查看的数据信息;
如果所述分析报告中存在与所述待查看的数据信息对应的分析结果,所述后台服务器从所述分析报告中获取与所述待查看的数据信息对应的分析结果;
如果所述分析报告中不存在与所述待查看的数据信息对应的分析结果,所述后台服务器从端平台获取与所述待查看的数据信息对应的目标性能数据;对所述目标性能数据进行分析,得到与所述待查看的数据信息对应的分析结果;
所述后台服务器将所述与所述待查看的数据信息对应的分析结果发送至所述监控客户端。
3.根据权利要求1所述的方法,其特征在于,所述游戏客户端获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息包括:
所述游戏客户端从云端平台获取监控配置信息,所述监控配置信息由监控客户端获取并发送至所述云端平台,所述监控配置信息包括游戏引擎中待监控的数据信息;
所述游戏客户端根据所述待监控的数据信息生成所述性能监控指令。
4.一种游戏性能监控方法,其特征在于,包括:
获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
5.根据权利要求4所述的方法,其特征在于,所述通过所述第一插件采集与所述待监控的数据信息对应的性能数据,包括:
通过第一插件中的自定义数据上报接口函数采集所述待监控的数据信息对应的性能数据;所述自定义数据上报接口函数包括用户界面加载时间上报函数、低坐标点上报函数或登录转化过程上报函数。
6.根据权利要求4所述的方法,其特征在于,所述通过所述第二插件将所述性能数据发送至后台服务器包括:
通过所述第二插件中设置的数据收集线程收集所述第一插件采集的与所述待监控的数据信息对应的性能数据;
通过所述第二插件中设置的数据发送线程将所述性能数据发送至所述后台服务器。
7.根据权利要求6所述的方法,其特征在于:
所述通过所述第二插件中设置的数据收集线程收集所述第一插件采集的与所述待监控的数据信息对应的性能数据包括:
通过所述数据收集线程遍历所有游戏线程对应的待收集队列,所述待收集队列中存储有所述第一插件采集的与所述待监控的数据信息对应的性能数据;
通过所述数据收集线程将每个所述待收集队列中的性能数据写入缓存文件,将所述缓存文件链接到待发送队列;
所述通过所述第二插件中设置的数据发送线程将所述性能数据发送至所述后台服务器包括:
当所述待发送队列非空时,通过所述数据发送线程基于传输控制协议将位于所述待发送队列队首的缓存文件发送至所述后台服务器。
8.一种游戏性能监控装置,其特征在于,包括:
获取模,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
采集模块,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
发送模块,用于通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
9.一种游戏性能监控系统,其特征在于,包括游戏客户端和后台服务器;
所述游戏客户端中设置有游戏性能监控装置,所述游戏性能监控装置包括:
获取模块,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
采集模块,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
发送模块,用于通过所述第二插件将所述性能数据发送至所述后台服务器;
所述后台服务器,用于对所述性能数据进行分析,得到分析报告。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1-7任意一项所述的方法。

说明书全文

一种游戏性能监控方法、装置、系统及存储介质

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种游戏性能监控方法、装置、系统及存储介质。

背景技术

[0002] 随着计算机通信以及互联网技术的发展,游戏应用的种类也越来越多。游戏应用运行时,游戏客户端的性能如内存、中央处理器(Central Processing Unit,CPU)、每秒传输数(Frames Per Second,FPS)、流量、温度和电量等,严重影响游戏玩家的游戏体验,良好的游戏客户端性能可以为游戏玩家带来更好的游戏体验,增加游戏玩家对游戏的粘性。
[0003] 因此,游戏应用运行时游戏客户端的性能情况,对于游戏运行项目组至关重要,不论是在开发阶段或者运营阶段,都需要持续关注。另外,通过采集游戏应用运行时游戏客户端的性能数据还可以为应用的性能缺陷分析和应用改进提供数据支持。
[0004] 现有的游戏客户端性能测试方法需要安装软件去采集性能数据、将性能数据上传到服务器,然后通过服务器对所述性能数据进行分析,生成性能报告。这种方法在性能数据采集的过程中,软件本身也会对客户端性能产生影响,加重客户端的性能负担,降低性能测试结果的准确性,并且将获得的性能数据保存到服务器,需要占用大量的服务器存储空间。另外,这种方法只能采集游戏开发阶段进行性能测试的游戏客户端的性能数据,不能采集游戏运营阶段外网的游戏客户端的性能数据,无法实现游戏性能数据的运营监控。

发明内容

[0005] 针对现有技术的上述问题,本发明的目的在于提供一种游戏性能监控方法、装置、系统及存储介质,能够实现游戏性能数据的运营监控,并且能够提高性能监控的准确性。
[0006] 为了解决上述问题,本发明提供一种游戏性能监控方法,包括:
[0007] 游戏客户端获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0008] 当与所述待监控的数据信息对应的探针被触发时,所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0009] 所述第二插件将所述性能数据发送至后台服务器;
[0010] 所述后台服务器对所述性能数据进行分析,得到分析报告。
[0011] 本发明另一方面提供一种游戏性能监控方法,包括:
[0012] 获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0013] 当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0014] 通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
[0015] 本发明另一方面提供一种游戏性能监控装置,包括:
[0016] 获取模,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0017] 采集模块,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0018] 发送模块,用于通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
[0019] 本发明另一方面提供一种游戏性能监控系统,包括游戏客户端和后台服务器;
[0020] 所述游戏客户端中设置有游戏性能监控装置,所述游戏性能监控装置包括:
[0021] 获取模块,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0022] 采集模块,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0023] 发送模块,用于通过所述第二插件将所述性能数据发送至所述后台服务器;
[0024] 所述后台服务器,用于对所述性能数据进行分析,得到分析报告。
[0025] 本发明另一方面提供一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述的方法。
[0026] 本发明另一方面提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述的方法。
[0027] 由于上述技术方案,本发明具有以下有益效果:
[0028] 本发明的一种游戏性能监控方法、装置、系统及存储介质,通过在游戏引擎中设置对应于插桩点位置信息的探针,以及封装具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件,使得游戏客户端在基于游戏引擎运行游戏程序的过程中,可以通过所述第一插件采集性能数据,通过第二插件将性能数据发送给后台服务器,然后通过后台服务器对所述性能数据进行分析得到分析报告并发送给用户,能够降低游戏采集过程对游戏客户端性能的影响、提高性能监控的准确性,方便用户发现和优化性能瓶颈。此外,将性能数据和分析报告存储在端平台能够节省服务器的存储空间,利于数据回溯和支持持久化保存。
[0029] 另外,本发明的游戏性能监控方法通过将监控配置信息存储于云端平台,游戏客户端在基于游戏引擎运行游戏程序时从云端平台下载所述监控配置信息,并判断是否开启数据采集功能,能够实现远程数据采集控制和游戏性能的运营监控。附图说明
[0030] 为了更清楚地说明本发明的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
[0031] 图1是本发明一个实施例提供的实施环境的示意图;
[0032] 图2是本发明另一个实施例提供的实施环境的示意图;
[0033] 图3是本发明一个实施例提供的后台服务器的架构示意图;
[0034] 图4是本发明一个实施例提供的游戏性能监控方法的流程图
[0035] 图5是本发明一个实施例提供的游戏引擎的架构示意图;
[0036] 图6A是本发明一个实施例提供的数据采集过程的示意图;
[0037] 图6B是本发明一个实施例提供的数据收集和发送过程的示意图;
[0038] 图7A是本发明一个实施例提供的在线分析过程的示意图;
[0039] 图7B是本发明一个实施例提供的离线分析过程的示意图;
[0040] 图8是本发明另一个实施例提供的游戏性能监控方法的流程图;
[0041] 图9A至图9F是本发明一个实施例提供的游戏性能数据分析报告的示意图;
[0042] 图10是本发明另一个实施例提供的游戏性能监控方法的流程图;
[0043] 图11是本发明另一个实施例提供的游戏性能监控方法的流程图;
[0044] 图12是本发明另一个实施例提供的游戏性能监控方法的流程图;
[0045] 图13是本发明另一个实施例提供的游戏性能监控方法的流程图;
[0046] 图14是本发明一个实施例提供的游戏性能监控装置的结构示意图;
[0047] 图15是本发明一个实施例提供的终端的结构示意图。

具体实施方式

[0048] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0049] 需要说明的是,本发明的说明书权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0050] 请参考说明书附图1,其示出了本发明一个实施例提供的实施环境的示意图,如图1所示,该实施环境可以至少包括游戏终端110和后台服务器120。
[0051] 游戏终端110中运行有游戏客户端。所述游戏终端110可以包括智能手机、平板电脑电子书阅读器、膝上型便携计算机和台式计算机等等。所述游戏客户端可以为一些服务商提供给用户的网页页面,也可以为这些服务商提供给用户的应用。
[0052] 后台服务器120可以是一台独立运行的服务器,也可以是由若干台服务器组成的服务器集群,或者是一个云计算服务中心。所述后台服务器120可以包括网络通信单元、处理器和存储器等等。所述后台服务器120可以通过网络与所述游戏终端110建立通信连接。
[0053] 本发明实施例中,所述游戏客户端可以用于采集游戏程序运行过程中的性能数据,所述后台服务器120可以用于对采集到的性能数据进行处理和分析。
[0054] 实际应用中,游戏项目组人员不仅可以在游戏开发阶段进行游戏性能监控,不断对比和优化版本性能;也可以在运营阶段进行游戏性能监控,检测运营期外网游戏的深度性能情况。本发明的性能监控方法可以适用于开发版本、发行版本、引擎源码版本以及用户编译的引擎版本的游戏性能监控。
[0055] 在一个可能的实施例中,如图2所示,该实施环境还可以包括监控终端130和云端平台140。
[0056] 监控终端130中运行有监控客户端。所述监控终端130可以包括智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。所述监控客户端可以为一些服务商提供给用户的网页页面,也可以为这些服务商提供给用户的应用,所述监控客户端可以用于提供控制任务发布和报告页面展示的功能。所述监控终端130可以通过网络与所述后台服务器120建立通信连接。
[0057] 云端平台140用于提供云存储功能。所述云端平台140可以与所述游戏终端110、所述后台服务器120和所述监控终端130分别通过网络建立通信连接。
[0058] 在一个示例中,如图3所示,当后所述台服务器120为集群架构时,所述后台服务器120可以包括在线分析服务器121和离线分析服务器122。
[0059] 所述在线分析服务器121用于提供对游戏性能数据的存储和在线分析的功能。所述离线分析服务器122用于提供对游戏性能数据的存储和离线分析的功能。所述在线分析服务器121和所述离线分析服务器122可以通过网络建立通信连接。该网络可以是无线网络,也可以是有线网络。
[0060] 请参考说明书附图4,其示出了本发明一个实施例提供的游戏性能监控方法的流程。该方法可以应用于图1所示实施环境中。如图4所示,所述方法可以包括以下步骤:
[0061] S401:游戏客户端获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件。
[0062] 本发明实施例中,所述性能监控指令可以为预先设置的指令,也可以为所述游戏客户端通过服务器获取的指令,还可以为所述游戏客户端生成的指令,所述性能监控指令包括待监控的数据信息。
[0063] 本发明实施例中,所述游戏引擎可以包括虚幻4引擎(Unreal Engine 4,UE4)。虚幻引擎是一款极为出色和流行的三维游戏引擎和开发工具,它支持从二维移动平台游戏到游戏主机平台的三维游戏的开发。虚幻引擎能够提供实时逼真渲染可视化脚本开发、专业动画与过场、健壮的游戏框架、灵活的材质编辑器、先进的人工智能和源代码开源等工具,是一套完整的构建游戏、模拟和可视化的集成工具,也具备足够的灵活性,可满足不同规模的开发团队的需求。
[0064] 在游戏开发过程中,可以将具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件复制到游戏引擎的指定目录中,在游戏内部逻辑开始处,调用插件初始化操作,即可以将插件集成到所述游戏引擎中,也可以在所述游戏引擎中编辑插件的开始和结束。游戏开发结束后,可以将游戏安装包安装到游戏设备上,即可以在游戏程序运行过程中实现性能数据的采集和发送功能。具体地,可以通过一个补丁包替换游戏引擎的底层函数,在预设的插桩点位置处设置探针,所述预设的插桩点位置可以为游戏开发人员根据需要确定的底层函数位置,所述探针是嵌入到游戏引擎代码中触发第一插件进行性能数据采集的代码段,所述探针通过获取游戏程序调用所述底层函数时的信息即可获取到游戏程序运行时的性能数据,例如中央处理器数据、图形处理器(Graphics Processing Unit,GPU)数据和内存数据等。
[0065] 此外,所述第一插件中还可以提供自定义数据上报接口函数,游戏过程中只要调用所述接口函数即可以采集自定义数据(即非引擎层面、监控人员根据自身游戏而特定关注的数据,例如用户界面加载时间、低帧坐标点和登录转化过程数据等),所述自定义数据主要方便游戏监控人员定位性能问题,监控游戏运行状态。示例性地,通过采集不同手机不同场景的用户界面加载时间,游戏监控人员可以分析比较用户界面加载的耗时,对特定用户界面或者特定手机进行用户界面加载优化;通过采集低帧坐标点可以帮助游戏监控人员分析某个地图上的低帧位置,大量玩家在某个位置附近发生低帧,则说明此位置资源加载需要优化;通过采集登陆转化过程数据,可以采集外网玩家每次进入游戏处于哪个阶段(例如登陆可细分为检查更新、第三方鉴权、鉴权返回、选择游戏区、进入大厅等过程),统计大量玩家的登陆阶段,可以知道多少玩家进行了更新,多少玩家没有进入大厅则直接退出游戏等信息。
[0066] 在一个可能的实施例中,所述第一插件和第二插件也可以封装为一个插件,实现性能数据的采集和发送功能。
[0067] S402:当与所述待监控的数据信息对应的探针被触发时,所述第一插件采集与所述待监控的数据信息对应的性能数据。
[0068] 本发明实施例中,游戏运行过程中,游戏程序的各个游戏线程(包括渲染线程、游戏线程等)可以多线程调用所述游戏引擎的接口。当与所述待监控的数据信息对应的探针被触发时,即当某个游戏线程调用了设置探针的函数时,所述第一插件就可以采集到与所述函数调用相关的性能数据;当调用所述自定义数据上报接口函数时,所述第一插件就可以采集到所述待监控的数据信息对应的自定义数据。然后可以将获取到的数据存储到与所述游戏线程信息对应的缓冲区中,当所述缓冲区中的数据量到达预设数据量时,可以将所述缓冲区链接到与所述游戏线程信息对应的待收集队列中。
[0069] 本发明实施例中,所述性能数据不仅可以包括每秒传输帧数、中央处理器数据、图形处理器数据和内存数据等,还可以包括游戏引擎的数据,例如游戏引擎内部函数调用堆栈与调用时间、游戏引擎相关模块性能数据、渲染耗时、脚本耗时和资源占用数据等。此外,所述性能数据还可以包括自定义数据,例如用户界面加载时间、低帧坐标点和登录转化过程数据等。需要说明的是,所述性能数据还可以包括其他类型的数据,本发明对此不做限制。
[0070] 示例性地,所述中央处理器数据可以包括如表1所示的数据:
[0071] 表1
[0072]
[0073] 所述图形处理器数据可以包括流程中各步骤的耗时数据,示例性地,所述图形处理器数据可以包括如表2所示的数据:
[0074] 表2
[0075]
[0076] 所述内存数据可以包括每个资源占用内存的情况(包括申请时间、释放时间、分类统计、内存泄漏判断和实时统计内存使用量等),示例性地,所述内存数据可以包括如表3所示的数据:
[0077] 表3
[0078]
[0079] S403:所述第二插件将所述性能数据发送至后台服务器。
[0080] 相应地,所述后台服务器接收所述性能数据。
[0081] 本发明实施例中,所述第二插件可以设置数据收集线程和数据发送线程,可以采用所述数据收集线程收集所述第一插件采集的与所述待监控的数据信息对应的性能数据,采用所述数据发送线程将所述性能数据发送至所述后台服务器。
[0082] 在一个示例中,如图5所示,可以通过采集控制插件(TAPM插件)将UE4引擎和数据采集插件(APM插件)结合在一起,然后UE4引擎即可以集成TAPM插件和APM插件的各个接口。其中,所述APM插件的接口可以用于实现数据采集和上报功能,而所述TAPM插件可以方便在UE4引擎中直接封装APM插件,简化接口,可以通过用户界面(User Interface,UI)控制性能采集和发送过程。通过TAPM插件,可以直接在UE4引擎的UI编辑界面中,编辑性能数据采集流程,包括初始化、开始采集、停止采集和标记场景等操作。具体地,集成APM插件后的UE4引擎的接口可以包括以下几种类型:
[0083] UE4引擎接口,用于绑定项目组自定义的采集函数,可以包括:
[0084] FThirdPartyProfiler:第三方分析类,通过FThirdPartyProfiler::ActivateProfiler()绑定第三方的Profiler类,在FThirdPartyProfiler中分别映射各个调用函数。
[0085] FThirdPartyMemoryTracker:第三方内存跟踪类,通过FThirdPartyMemory-Tracker::SetStatUpdateCallback(&FTAPMPluginModule::SyncLLMStats)绑定调用函数。
[0086] TAPM插件接口,可以包括:
[0087] FAPMProfiler:插件中的主体类,对接UE4引擎和APM插件。
[0088] FTAPMPluginModule:插件类,负责启动TAPM插件,并且激活类FAPMProfiler。
[0089] UTAPMBlueprintFunctionLibrary:蓝图接口类,对接FAPMProfiler,在这个类中实现蓝图可以访问的接口。
[0090] APM插件接口,可以包括:
[0091] APMPerfData:动态链接库中所有对外部开放的接口的函数集合。通过实例获取函数(GetAPMSession()函数)获取APMPerfDataSession实例,从而访问APM插件内部功能。
[0092] APMPerfDataSession:插件中的实例,对接APMPerfData和APMPerfDataTLS,同时内部开启数据收集线程和数据发送线程;所述数据收集线程负责从各线程收集信息并且写入到缓存文件;所述数据发送线程负责发送缓存文件。
[0093] APMPerfDataTLS:线程本地变量,每个线程都有一个APMPerfDataTLS实例,负责采集本线程的信息,放到缓冲区中,等待数据收集线程来收集。
[0094] 本示例中,结合参考说明书附图6A和6B,游戏客户端可以基于所述UE4引擎运行游戏程序,所述UE4引擎中还可以设置有对应于插桩点位置信息的探针,所述探针与待监控的数据信息相对应。
[0095] 当游戏程序开始运行时,所述游戏客户端可以获取性能监控指令,所述性能监控指令包括待监控的数据信息。获取到性能监控指令后,游戏程序的各个游戏线程在每帧实际执行期间,可以使用所述游戏线程的APMPerfDataTLS实例采集本帧执行期间当与所述待监控的数据信息对应的探针被触发时的游戏性能数据,并将所述游戏性能数据写入所述游戏线程当前使用的缓冲区中,如果缓冲区写满,则把缓冲区放入完成队列,并重新申请一个使用缓冲区。当每帧完成时,可以收集所述完成队列中的缓冲区到与所述游戏线程对应的待收集队列中。
[0096] 当每帧开始时,全局唯一的APMPerfDataSession实例的数据收集线程可以遍历所有游戏线程对应的待收集队列,将每个所述待收集队列中的缓冲区中的性能数据取出、合并,并写入缓存文件,当所述缓存文件达到指定大小后,可以关闭本缓存文件、把所述缓存文件加入到待发送队列中,并可以创建新的缓存文件。APMPerfDataSession实例的数据发送线程可以通过传输控制协议(Transmission Control Protocol,TCP)与所述后台服务器建立连接,当所述待发送队列非空时,可以将所述待发送队列中的缓存文件发送至所述后台服务器。
[0097] S404:所述后台服务器对所述性能数据进行分析,得到分析报告。
[0098] 本发明实施例中,所述后台服务器对所述性能数据进行分析可以包括在线分析和离线分析。所述在线分析可以对获取到的性能数据进行简单的统计分析(例如计算CPU均值、内存均值等信息)得到在线分析报告,所述离线分析可以对所述性能数据或者所述在线分析报告进行详细的数据分析(例如定位某个游戏客户端详细性能时,需要进行详细的数据分析)得到离线分析报告。
[0099] 另外,所述后台服务器对所述性能数据进行分析不仅可以对同一个游戏客户端的性能数据进行分析得到所述游戏客户端的性能情况,还可以对一个游戏的多个游戏客户端的性能数据进行分析得到所述游戏在游戏客户端上运行的性能情况,同时还可以支持同一个游戏不同版本运行的性能情况的对比分析,使得不同版本的性能情况一目了然。
[0100] 在一个示例中,结合参考说明书附图7A,可以通过在线分析服务器对所述性能数据进行在线分析,所述在线分析可以用于对单个游戏客户端发送的性能数据进行分析,生成在线分析报告,并可以将得到的在线分析报告存储于在线数据库和/或云端平台中。结合参考说明书附图7B,可以通过离线分析服务器对所述性能数据或者所述在线分析报告进行离线分析,所述离线分析服务器可以从云端平台中拉取所述性能数据或者所述在线分析报告,并对所述性能数据进行详细分析生成离线分析报告,或者对所述在线分析报告进行二次分析生成离线分析报告,所述二次分析可以包括在在线分析的单个游戏客户端的基础上,进行版本、机型、场景、画质等维度的统计,并且可以将所述离线分析报告存储于离线数据库中。此外,还可以将所述在线分析报告、所述离线分析报告存储在临时文件中(例如可以以场景进行命名,并且放于用户标识/应用标识/测试标识的目录中),以方便用户进行下载等操作。
[0101] 在一个可能的实施例中,如图8所示,所述方法还可以包括步骤:
[0102] S405:所述后台服务器将所述分析报告发送至监控客户端。
[0103] 本发明实施例中,所述监控客户端获取到所述分析报告后,可以通过指定界面展示给监控人员,监控人员可以通过所述分析报告发现和优化性能瓶颈。另外,所述后台服务器也可以通过其他方式(例如邮件等)将所述分析报告推送给监控人员。
[0104] 在一个示例中,结合参考说明书附图9A至图9F,所述分析报告可以包括CPU曲线与单帧详细数据、单个模块与函数耗时、线程与函数耗时和内存数据与单帧内存数据等信息。
[0105] S406:所述后台服务器将所述性能数据和所述分析报告发送至云端平台进行存储。
[0106] 本发明实施例中,所述后台服务器可以将所述性能数据以及对所述性能数据进行在线分析和离线分析得到的分析报告发送至云端平台进行存储,不仅可以少占用服务的存储空间,还可以长期保留原始数据以方便数据回溯、数据重复解析和数据下载等操作。
[0107] 在另一个可能的实施例中,如图10所示,所述方法还可以包括步骤:
[0108] S1010:所述后台服务器获取监控客户端发送的性能查看指令,所述性能查看指令包括待查看的数据信息。
[0109] 本发明实施例中,所述监控客户端向监控人员展示所述分析报告后,可以通过展示界面获取所述监控人员输入的性能查看指令,所述性能查看指令包括待查看的数据信息,并且将所述性能查看指令发送至所述后台服务器。
[0110] S1020:如果所述分析报告中存在与所述待查看的数据信息对应的分析结果,所述后台服务器从所述分析报告中获取与所述待查看的数据信息对应的分析结果。
[0111] 本发明实施例中,所述后台服务器获取到所述性能查看指令后,可以先在所述分析报告中查找是否存在与所述待查看的数据信息对应的分析结果,判断是否需要进行数据分析。如果所述分析报告中存在与所述待查看的数据信息对应的分析结果,则可以直接获取所述分析结果。
[0112] S1030:如果所述分析报告中不存在与所述待查看的数据信息对应的分析结果,所述后台服务器从云端平台获取与所述待查看的数据信息对应的目标性能数据。
[0113] S1040:所述后台服务器对所述目标性能数据进行分析,得到与所述待查看的数据信息对应的分析结果。
[0114] 本发明实施例中,如果所述分析报告中不存在与所述待查看的数据信息对应的分析结果,则可以从云端平台中获取与所述待查看的数据信息对应的原始的性能数据,通过所述后台服务器进行分析得到分析结果。在一个示例中,可以通过离线分析服务器对所述原始的性能数据进行分析得到分析结果。
[0115] S1050:所述后台服务器将所述与所述待查看的数据信息对应的分析结果发送至所述监控客户端。
[0116] 相应地,所述监控客户端接收所述与所述待查看的数据信息对应的分析结果,所述监控客户端接收到所述分析结果后,可以在指定界面向监控人员展示所述分析结果。
[0117] 在一个可能的实施例中,所述性能查看指令还可以包括目标帧信息,当所述目标帧信息为单帧信息时,可以从所述分析结果中直接获取所述目标帧信息对应的分析数据并发送至所述监控客户端,当所述目标帧信息为多帧信息时,可以从所述分析结果中获取所述目标帧信息对应的分析数据并且进行统计之后再发送至所述监控客户端。
[0118] 请参考说明书附图11,其示出了本发明一个实施例提供的游戏性能监控方法的流程。该方法可应用于图2所示实施环境中。如图11所示,所述方法可以包括以下步骤:
[0119] S1101:监控客户端获取监控配置信息,所述监控配置信息包括游戏引擎中待监控的数据信息。
[0120] 本发明实施例中,监控人员可以通过所述监控客户端的监控页面输入监控配置信息,所述监控配置信息可以包括游戏程序信息和待监控的数据信息。
[0121] S1102:所述监控客户端将所述监控配置信息发送至云端平台。
[0122] 相应地,所述云端平台接收并存储所述监控客户端发送的所述监控配置信息。
[0123] S1103:所述游戏客户端从所述云端平台获取所述监控配置信息。
[0124] 本发明实施例中,所述游戏客户端运行游戏程序后,可以根据所述运行的游戏程序信息从所述云端平台获取与所述游戏程序对应的监控配置信息。
[0125] S1104:所述游戏客户端根据所述待监控的数据信息生成性能监控指令。
[0126] 在一个可能的实施例中,所述所述游戏客户端根据所述待监控的数据信息生成性能监控指令之前,还可以包括:游戏客户端根据所述监控配置信息确定是否开启数据采集功能。
[0127] 具体地,所述监控配置信息还可以包括待监控的游戏客户端信息,所述游戏客户端可以根据所述监控配置信息中的待监控的游戏客户端信息来确定是否开启数据采集功能,如果所述待监控的游戏客户端信息包括所述游戏客户端自身的信息,则确定开启数据采集功能,执行所述游戏客户端根据所述待监控的数据信息生成性能监控指令的步骤。
[0128] S1105:当与所述待监控的数据信息对应的探针被触发时,所述第一插件采集与所述待监控的数据信息对应的性能数据。
[0129] 本发明实施例中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件。
[0130] S1106:所述第二插件将所述性能数据发送至后台服务器。
[0131] S1107:所述后台服务器对所述性能数据进行分析,得到分析报告。
[0132] S1108:所述后台服务器将所述分析报告发送至监控客户端。
[0133] S1109:所述后台服务器将所述性能数据和所述分析报告发送至云端平台进行存储。
[0134] 其他相关细节可参考图4和图8所示的方法实施例。
[0135] 请参考说明书附图12,其示出了本发明一个实施例提供的游戏性能监控方法的流程。该方法可应用于游戏客户端中。如图12所示,所述方法可以包括以下步骤:
[0136] S1210:获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件。
[0137] 本发明实施例中,所述性能监控指令可以为预先设置的指令,也可以为所述游戏客户端通过服务器获取的指令,还可以为所述游戏客户端生成的指令。在一个示例中,所述性能监控指令可以根据从云端平台获取的监控配置信息生成,所述监控配置信息包括所述待监控的数据信息。
[0138] S1220:当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据。
[0139] 本发明实施例中,游戏线程在每帧执行过程中,当与所述待监控的数据信息对应的探针被触发时,所述第一插件获取性能数据并将所述性能数据写入对应游戏线程当前使用的缓冲区中,如果缓冲区写满,则把缓冲区放入完成队列,并重新申请一个使用缓冲区。当每帧完成时,可以收集所述完成队列中的缓冲区到与所述游戏线程对应的待收集队列中。
[0140] 在一个可能的实施例中,所述通过所述第一插件采集与所述待监控的数据信息对应的性能数据可以包括:
[0141] 通过第一插件中的自定义数据上报接口函数采集所述待监控的数据信息对应的性能数据;所述自定义数据上报接口函数可以包括用户界面加载时间上报函数、低帧坐标点上报函数或登录转化过程上报函数等。
[0142] S1230:通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
[0143] 在一个可能的实施例中,如图13所示,所述通过所述第二插件将所述性能数据发送至后台服务器可以包括:
[0144] S1310:通过所述第二插件中设置的数据收集线程收集所述第一插件采集的与所述待监控的数据信息对应的性能数据。
[0145] 本发明实施例中,所述通过所述第二插件中设置的数据收集线程收集所述第一插件采集的与所述待监控的数据信息对应的性能数据可以包括:
[0146] 通过所述数据收集线程遍历所有游戏线程对应的待收集队列,所述待收集队列中存储有所述第一插件采集的与所述待监控的数据信息对应的性能数据;
[0147] 通过所述数据收集线程将每个所述待收集队列中的性能数据写入缓存文件,将所述缓存文件链接到待发送队列。
[0148] S1320:通过所述第二插件中设置的数据发送线程将所述性能数据发送至所述后台服务器。
[0149] 本发明实施例中,所述通过所述第二插件中设置的数据发送线程将所述性能数据发送至所述后台服务器可以包括:
[0150] 当所述待发送队列非空时,通过所述数据发送线程基于传输控制协议将位于所述待发送队列队首的缓存文件发送至所述后台服务器。
[0151] 具体地,所述数据发送线程可以获取所述待发送队列的成员数量,根据所述成员数量判断待发送队列是否为空,当所述待发送队列非空时,通过传输控制协议将位于所述待发送队列队首的缓存文件发送至所述后台服务器。
[0152] 其他相关细节可参考图4和图8所示的方法实施例。
[0153] 综上所述,本发明的游戏性能监控方法,通过在游戏引擎中设置对应于插桩点位置信息的探针,以及封装具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件,使得游戏客户端在基于游戏引擎运行游戏程序的过程中,可以通过所述第一插件采集性能数据,通过第二插件将性能数据发送给后台服务器,然后通过后台服务器对所述性能数据进行分析得到分析报告并发送给用户,能够降低游戏采集过程对游戏客户端性能的影响、提高性能监控的准确性,方便用户发现和优化性能瓶颈。此外,将性能数据和分析报告存储在云端平台能够节省服务器的存储空间,利于数据回溯和支持持久化保存。
[0154] 另外,本发明的游戏性能监控方法通过将监控配置信息存储于云端平台,游戏客户端在基于游戏引擎运行游戏程序时从云端平台下载所述监控配置信息,并判断是否开启数据采集功能,能够实现远程数据采集控制和游戏性能的运营监控。
[0155] 请参考说明书附图14,其示出了本发明一个实施例提供的游戏性能监控装置的结构。如图14所示,所述装置可以包括:
[0156] 获取模块1410,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0157] 采集模块1420,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0158] 发送模块1430,用于通过所述第二插件将所述性能数据发送至后台服务器,以使得所述后台服务器对所述性能数据进行分析,得到分析报告。
[0159] 本发明一个实施例还提供了一种游戏性能监控系统,包括游戏客户端和后台服务器;
[0160] 所述游戏客户端中设置有游戏性能监控装置,所述游戏性能监控装置包括:
[0161] 获取模块,用于获取性能监控指令,所述性能监控指令包括游戏引擎中待监控的数据信息;其中,所述游戏引擎中设置有对应于插桩点位置信息的探针,以及,封装有具有性能数据采集功能的第一插件和具有性能数据发送功能的第二插件;
[0162] 采集模块,用于当与所述待监控的数据信息对应的探针被触发时,通过所述第一插件采集与所述待监控的数据信息对应的性能数据;
[0163] 发送模块,用于通过所述第二插件将所述性能数据发送至所述后台服务器;
[0164] 所述后台服务器,用于对所述性能数据进行分析,得到分析报告。
[0165] 在一个可能的实施例中,所述系统还可以包括监控客户端和云端平台;
[0166] 所述监控客户端,用于获取监控配置信息,所述监控配置信息包括游戏引擎中待监控的数据信息;将所述监控配置信息发送至云端平台;
[0167] 所述获取模块,还用于从所述云端平台获取监控配置信息;根据所述待监控的数据信息生成性能监控指令。
[0168] 需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0169] 本发明一个实施例还提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集可由所述处理器加载并执行以实现上述方法实施例中游戏客户端侧的各个步骤。
[0170] 存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及游戏性能监控。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
[0171] 在一个具体的实施例中,如图15所示,其示出了本发明一个实施例提供的运行一种游戏性能监控方法的终端的结构示意图。如图15所示,所述终端1500可以包括一个或一个以上计算机可读存储介质的存储器1510、一个或者一个以上处理核心的处理器1520、输入单元1530、显示单元1540、射频(Radio Frequency,RF)电路1550、无线保真(wireless fidelity,WiFi)模块1560以及电源1570等部件。本领域技术人员可以理解,图15中示出的终端结构并不构成对终端1500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0172] 所述存储器1510可用于存储软件程序以及模块,所述处理器1520通过运行或执行存储在所述存储器1510的软件程序以及模块,以及调用存储在存储器1510内的数据,从而执行各种功能应用以及数据处理。所述存储器1510可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器1510可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1510还可以包括存储器控制器,以提供处理器1520对存储器1510的访问。
[0173] 所述处理器1520是终端1500的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器1510内的软件程序和/或模块,以及调用存储在存储器1510内的数据,执行终端1500的各种功能和处理数据,从而对终端1500进行整体监控。所述处理器1520可以是中央处理器,还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0174] 所述输入单元1530可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1530可包括图像输入设备1531以及其他输入设备1532。图像输入设备1531可以是摄像头,也可以是光电扫描设备。除了图像输入设备1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0175] 所述显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1540可包括显示面板1541,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1541。
[0176] 所述RF电路1550可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器1520处理;另外,将涉及上行的数据发送给基站。通常,RF电路1550包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机耦合器低噪声放大器(LowNoiseAmplifier,LNA)、双工器等。此外,RF电路1550还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System ofMobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division MultipleAccess,CDMA)、宽带码分多址(Wideband Code Division MultipleAccess,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
[0177] WiFi属于短距离无线传输技术,终端1500通过WiFi模块1560可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图15示出了WiFi模块1560,但是可以理解的是,其并不属于终端1500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0178] 所述终端1500还包括给各个部件供电的电源1570(比如电池),优选的,电源可以通过电源管理系统与处理器1520逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1570还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0179] 需要说明的是,尽管未示出,所述终端1500还可以包括蓝牙模块等,在此不再赘述。
[0180] 本发明一个实施例还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集可由终端的处理器加载并执行以实现上述方法实施例中游戏客户端侧的各个步骤,或者可由服务器的处理器执行以实现上述方法实施例中后台服务器侧的各个步骤。
[0181] 可选地,在本发明实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0182] 需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0183] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、终端和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0184] 本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0185] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈