System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及计算机,具体涉及一种函数处理的方法、装置、设备、存储介质及程序产品。
技术介绍
1、在各种应用程序等分析任务的性能验收阶段,往往会出现各类的热点函数问题。在传统的热点函数的分析方式中,往往会使用虚幻引擎(unreal engine,ue)提供的stat录制工具进行数据收集,并使用ue引擎自带的frontend工具进行解析。研发人员会根据frontend工具分析得到的函数信息,对分析任务进行手动逐帧分析,尽可能地将各类热点函数抓取,从而根据函数耗时的优先级进行尝试优化,并在完成优化后进行标记,以进入下一轮的游戏性能验收直至性能达标。
2、换句话说,当前对于分析任务中热点函数的收集是通过stat工具收集整个函数耗时信息,之后使用frontend工具进行解析。然而,在分析的过程中往往需要人工进行逐帧地高耗时分析,例如说录制时长为30分钟的录制视频约有1800帧,需要人工手动地对这1800帧子任务进行热点函数的分析,消耗巨大的时间和人力成本,并不利于快速地确定热点函数。
技术实现思路
1、本申请实施例提供了一种函数处理的方法、装置、设备、存储介质及程序产品,用于实现全量自动化分析待分析任务中的热点函数,避免人工逐帧分析,省去了人工逐帧分析时的时间和人力成本,极大地提高了热点分析效率。
2、第一方面,本申请实施例提供了一种函数处理的方法。该方法包括:获取待分析任务的第一文件,所述第一文件包括至少一个第一运行函数以及每个所述第一运行函数的函数信息,每个所
3、第二方面,本申请实施例提供一种函数处理装置。该函数处理装置包括获取单元和处理单元。其中,获取单元,用于获取待分析任务的第一文件,所述第一文件包括至少一个第一运行函数以及每个所述第一运行函数的函数信息,每个所述函数信息用于指示在运行每一帧子任务时对应的所述第一运行函数的运行情况,所述待分析任务包括n帧所述子任务,n为大于或等于1的整数。处理单元,用于对运行每一帧所述子任务时的一个或多个所述第一运行函数的函数信息进行解析处理,得到第一分析结果,所述第一分析结果用于指示运行每一帧所述子任务时对应的所述第一运行函数的函数性能情况。所述处理单元,用于基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数。
4、在一些可选的实施方式中,所述第一分析结果包括运行耗时信息;处理单元用于:对运行当前帧子任务时的每个所述第一运行函数的运行耗时信息进行求和,得到所述当前帧子任务的总耗时,所述当前帧子任务为所述n帧子任务中的任意一帧子任务;在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数。
5、在另一些可选的实施方式中,所述预设判定条件包括以下条件中的一个或多个,即:述当前帧子任务的总耗时大于至少p倍的所述当前帧子任务的平均耗时,p为大于或等于2的整数;所述当前帧子任务的总耗时大于至少q倍的第一子任务的平均耗时,所述第一子任务包括在所述当前帧子任务之前的至少前m帧子任务,m、q为大于或等于2的整数;所述当前帧子任务的总耗时大于预设耗时阈值。
6、在另一些可选的实施方式中,处理单元还用于:在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,统计运行所述当前帧子任务时的所述第一运行函数的函数数目;基于所述当前帧子任务的总耗时和运行所述当前帧子任务时所述第一运行函数的函数数目,确定所述当前帧子任务的平均耗时。
7、在另一些可选的实施方式中,处理单元还用于:在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,统计所述至少前m帧子任务中运行每帧所述子任务时的所述第一运行函数的函数数目,并对所述至少前m帧子任务中运行每帧所述子任务时的第一运行函数的函数数目进行求和,得到运行所述第一子任务时的函数数目;对所述前m帧子任务中运行每帧所述子任务时的所述第一运行函数的运行耗时信息进行求和,得到所述第一子任务的总耗时;基于所述第一子任务的总耗时和所述第一子任务的函数数目,确定所述第一子任务的平均耗时。
8、在另一些可选的实施方式中,处理单元还用于:在基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数之后,记录运行所述当前帧子任务时的每个所述第一运行函数的函数标识。
9、在另一些可选的实施方式中,获取单元还用于:在基于运行每一帧所述子任务时的每个所述第一运行函数的运行分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数之后,获取所述待分析任务的第二文件,所述第二文件包括至少一个第二运行函数以及每个所述第二运行函数的函数信息,每个所述函数信息用于指示在运行每一帧子任务时对应的所述第二运行函数的运行情况。处理单元,用于对运行每一帧所述子任务时的一个或多个所述第二运行函数的函数信息进行解析处理,得到第二分析结果,所述第二分析结果用于指示运行每一帧所述子任务时对应的所述第二运行函数的函数性能情况;基于所述第一分析结果和所述第二分析结果确定比较结果,所述比较结果用于指示运行每一帧所述子任务时的所述第一运行函数与所述第二运行函数之间的函数运行性能差异;基于所述比较结果对所述第一运行函数和所述第二运行函数进行分析处理。
10、在另一些可选的实施方式中,处理单元还用于:所述基于所述第一分析结果和所述第二分析结果确定比较结果之后,将所述比较结果存储至远程存储介质中。
11、在另一些可选的实施方式中,获取单元还用于:所述对运行每一帧所述子任务时的一个或多个所述第一运行函数的函数信息进行解析处理,得到第一分析结果之前,获取编译配置信息,并基于所述编译配置信息构建目标应用程序,所述编译配置信息用于指示运行所述待分析任务时的进程配置情况。处理单元,用于通过所述目标应用程序对运行每一帧所述子任务时的一个或多个所述第一运行函数的函数信息进行解析处理,得到第一分析结果。
12、本申请实施例第三方面提供了一种函数处理设备,包括:存储器、输入/输出(i/o)接口和存储器。存储器用于存储程序指令。处理器用于执行存储器中的程序指令,以执行上述第一方面的实施方式对应的函数处理的方法。
13、本申请实施例第四方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当本文档来自技高网...
【技术保护点】
1.一种函数处理的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述第一分析结果包括运行耗时信息;基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数,包括:
3.根据权利要求2所述的方法,其特征在于,所述预设判定条件包括以下条件中的一个或多个,即:
4.根据权利要求3所述的方法,其特征在于,在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,所述方法还包括:
5.根据权利要求3所述的方法,其特征在于,在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,所述方法还包括:
6.根据权利要求2至5中任一项所述的方法,其特征在于,在基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数之后,所述方法还包括:
7.根据权利要求1至5中任一项所述的方法,其特征在于,在基于运行
8.根据权利要求7所述的方法,其特征在于,所述基于所述第一分析结果和所述第二分析结果确定比较结果之后,所述方法还包括:
9.根据权利要求1至5中任一项所述的方法,其特征在于,所述对运行每一帧所述子任务时的一个或多个所述第一运行函数的函数信息进行解析处理,得到第一分析结果之前,所述方法还包括:
10.一种函数处理装置,其特征在于,包括:
11.一种函数处理设备,其特征在于,包括:输入/输出接口、处理器和存储器,所述存储器中存储有程序指令;
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括指令,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1至9中任一项所述的方法。
13.一种计算机程序产品,其特征在于,所述计算机程序产品包括指令,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1至9中任一项所述的方法。
...【技术特征摘要】
1.一种函数处理的方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述第一分析结果包括运行耗时信息;基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数,包括:
3.根据权利要求2所述的方法,其特征在于,所述预设判定条件包括以下条件中的一个或多个,即:
4.根据权利要求3所述的方法,其特征在于,在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,所述方法还包括:
5.根据权利要求3所述的方法,其特征在于,在所述当前帧子任务的总耗时满足预设判定条件时,确定运行所述当前帧子任务时的每个所述第一运行函数为所述当前帧子任务中的热点函数之前,所述方法还包括:
6.根据权利要求2至5中任一项所述的方法,其特征在于,在基于所述第一分析结果,从所述一个或多个所述第一运行函数中确定对应帧所述子任务中的热点函数之后,所述方法还包括:
7.根据权利要求1至5中任一项所述的方法,其特征在于,在基...
【专利技术属性】
技术研发人员:杨帆,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。