[发明专利]一种代码性能评测方法及装置在审
| 申请号: | 202110032071.X | 申请日: | 2021-01-11 |
| 公开(公告)号: | CN112732578A | 公开(公告)日: | 2021-04-30 |
| 发明(设计)人: | 彭云涛 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41 |
| 代理公司: | 北京开阳星知识产权代理有限公司 11710 | 代理人: | 唐博 |
| 地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 代码 性能 评测 方法 装置 | ||
本发明实施例提供了一种代码性能评测方法及装置,涉及软件开发技术领域。该方法包括:获取第一代码与第二代码的差异信息;基于差异信息生成第一应用程序包和第二应用程序包;第一应用程序包包括第一指令集和差异信息在第一代码中对应的各方法的探针,第二应用程序包包括第二指令集和差异信息在第二代码中对应的各方法的探针;运行第一应用程序包和第二应用程序包,获取第一记录文件和第二记录文件,第一记录文件包括差异信息在第一代码中对应的各方法的调用信息,第二记录文件包括差异信息在第二代码中对应的各方法的调用信息;根据第一记录文件和第二记录文件输出差异信息对应的代码的性能评测结果。本发明实施例准确的获取差异的代码的性能。
技术领域
本发明涉及软件开发技术领域,尤其涉及一种代码性能评测方法及装置。
背景技术
目前,软件规模化及复杂程度越来越高,一个软件项目往往需要由多人或者多个开发团队进行开发。多分支开发是一种可以有效提升开发效率的开发模式,多分支开发中,各分支之间互不影响,主线分支(master)是稳定的代码版本,为代码的迭代开发提供稳定可靠的代码基础,开发分支用于进行新功能开发、缺陷(bug)修复等。此外,多分支开发模式中,代码上线或代码发布之前需要将各个开发分支的代码与主线分支进行合并。
在优化软件性能的时候,需要对软件代码进行性能评测,以便能及时拦截住劣化代码。对多分支开发模式中的软件代码进行性能评测时,一个主要目的是获取开发分支代码与主线分支代码的差异代码性能评测结果。现有技术中获取差异代码的性能评测结果的方式为:分别获取主线分支代码对应的应用程序包的性能评测结果和开发分支代码对应的应用程序包的性能评测结果,然后将开发分支代码对应的应用程序包的性能评测结果与主线分支代码对应的应用程序包的能评测结果作差,以获取差异代码的性能评测结果。然而,受限于环境变量对代码性能的影响,性能评测过程中开发分支代码和主线分支代码中共有的代码也可能会产生性能差异,现有技术中获取差异代码性能评测结果的方式会将这一部性能分差异算入差异代码的性能评测结果中,因此现有技术中获取的差异代码的性能评测结果不准确。
发明内容
有鉴于此,本发明提供了一种代码性能评测方法及装置,用于解决现有技术中获取的差异代码的性能评测结果不准确。
为了实现上述目的,本发明实施例提供技术方案如下:
第一方面,本发明的实施例提供了一种代码性能评测方法,包括:
获取第一代码与第二代码的差异信息,所述第二代码为在所述第一代码的基础上进行编辑得到的代码;
基于所述差异信息生成第一应用程序包和第二应用程序包;所述第一应用程序包包括第一指令集和所述差异信息在所述第一代码中对应的各方法的探针,所述第二应用程序包包括第二指令集和所述差异信息在所述第二代码中对应的各方法的探针,所述第一指令集为编译所述第一代码得到的指令组成的集合,所述第二指令集为编译所述第二代码得到的指令组成的集合,所述探针用于记录对应的方法的调用信息;
运行所述第一应用程序包和所述第二应用程序包,获取第一记录文件和第二记录文件,所述第一记录文件包括所述差异信息在所述第一代码中对应的各方法的调用信息,所述第二记录文件包括所述差异信息在所述第二代码中对应的各方法的调用信息;
根据所述第一记录文件和所述第二记录文件输出所述差异信息对应的代码的性能评测结果。
作为本发明实施例一种可选的实施方式,所述基于所述差异信息生成第一应用程序包和第二应用程序包,包括:
对所述第一代码进行编译生成所述第一指令集;
确定所述差异信息对应的各个方法在所述第一指令集中所调用的指令,并对各方法所调用的指令插入探针,生成所述第一应用程序包;
对所述第二代码进行编译生成所述第二指令集;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110032071.X/2.html,转载请声明来源钻瓜专利网。





