[发明专利]一种程序性能分析方法及装置有效
申请号: | 201811455803.0 | 申请日: | 2018-11-30 |
公开(公告)号: | CN109542793B | 公开(公告)日: | 2022-06-14 |
发明(设计)人: | 尹杰;彭军;楼天城 | 申请(专利权)人: | 北京小马智行科技有限公司;北京小马慧行科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 王文红 |
地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 程序 性能 分析 方法 装置 | ||
本申请提供了一种程序性能分析方法及装置,其中,该方法包括:获取目标程序;确定所述目标程序每次运行的过程中对所述目标程序进行采样的采样时间段,其中,每个采样时间段的采样起始时刻对应在目标程序上的采样位置不同;在所述每个采样时间段中对所述目标程序进行采样,得到所述每个采样时间段对应的采样结果;根据所述每个采样时间段对应的采样结果,确定所述目标程序的运行性能。本申请实施例通过在多个采样时间段内对目标程序进行多次采样,得到目标程序在不同位置上的样本结果,并最终确定所述目标程序的运行性能,增加了采样样本的丰富性,以根据采样样本得到更准确的目标程序性能的分析结果。
技术领域
本申请涉及软件测试技术领域,具体而言,涉及一种程序性能分析方法及装置。
背景技术
随着电子技术的广泛应用,产生了专门提供计算机所需软件的新兴工业部门及新兴商品,即计算机程序。计算机程序通常是一个指令序列,从外部设备,尤其是硬盘,被加载到计算机里,指令序列顺序执行,以完成相应的命令。
计算机程序可以实现的功能非常广泛,所以对计算机程序的检查维护尤为重要。现有技术中,通常是对要维护的计算机程序进行固定周期的采样,例如,对一段程序在固定时间间隔内,如每隔10ms对目标程序进行一次采样,获取采样位置上包含该程序的调用栈、进程号、线程号以及调用栈中执行的指令等可以表征程序性能的样本,并通过采集的这些样本来分析程序性能。
但上述对计算机程序的采样方法只能获取一段时间内的少量样本,因为采样时间间隔的长度目前无法进一步减短,并且更短的采样时间间隔会影响原本程序的进行。所以,按照现有的采样方法,很难准确检查出计算机程序的运行性能。
发明内容
有鉴于此,本申请实施例的目的在于提供一种程序性能分析方法及装置,通过增加对目标程序进行采样的样本数量,提高对目标程序性能分析的准确性。
第一方面,本申请实施例提供了一种程序性能分析方法,其中,包括:
获取目标程序;
确定所述目标程序每次运行的过程中对所述目标程序进行采样的采样时间段,其中,每个采样时间段的采样起始时刻对应在目标程序上的采样位置不同;
在所述每个采样时间段中对所述目标程序进行采样,得到所述每个采样时间段对应的采样结果;
根据所述每个采样时间段对应的采样结果,确定所述目标程序的运行性能。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,所述在所述每个采样时间段中对所述目标程序进行采样,包括:
在所述目标程序运行过程中,当所述目标程序运行到第一程序位置时,若检测到所述第一程序位置对应的运行时间被标记为所述采样起始时刻,则对所述目标程序进行采样;
在对所述目标程序进行采样的过程中,当所述目标程序运行到第二程序位置时,若检测到所述第二程序位置对应的运行时间被标记为采样终止时刻,则停止对所述目标程序的采样。
结合第一方面第一可能的实施方式,本申请实施例提供了第一方面的第二种可能的实施方式,其中,根据以下步骤标记所述采样起始时刻和所述采样终止时刻:
所述目标程序在运行到所述第一程序位置时,生成第一标记文件,其中,所述第一标记文件的生成时间为所述采样起始时刻;
所述目标程序在运行到所述第二程序位置时,生成第二标记文件,其中,所述第二标记文件的生成时间为所述采样终止时刻;
所述方法还包括:
将所述第一程序位置对应的运行时间标记为所述采样起始时刻,以及将所述第二程序位置对应的运行时间标记为所述采样终止时刻。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京小马智行科技有限公司;北京小马慧行科技有限公司,未经北京小马智行科技有限公司;北京小马慧行科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811455803.0/2.html,转载请声明来源钻瓜专利网。