ISSTA15 - GA-Prof - Automating Performance Bottleneck Detection usingSearch-Based Application Profiling
摘要
- 提出一种检测性能问题的方法,针对基于搜索的输入敏感的应用
- GA-Prof: Genetic Algorithm-driven Profiler
- GA-Prof有效地搜索了输入值组合的大空间,同时主动和准确地检测性能瓶颈,从而表明它是有效的自动分析
Intro
探索性随机性能测试寻找瓶颈
传统分析的缺点:输入过多,流程分支复杂,难以设定好的初始值来获得瓶颈
传统工作方法:
- 插桩
- 收集数据
- 理解AUT的代码,理解哪些方法和特定的输入相关
- 在AUT中构造不同的输入组合,寻找瓶颈
- 对不同的输入组合,分析执行轨迹,归纳结果
工作:使用遗传算法作为搜索启发式,获得输入参数的组合,最大化指导搜索过程的适应度函数
背景
输入敏感Profiling
- 基于所有输入数据都是预先可用的假设。但如果瓶颈和输入的大小成正交,则简单的输入导致智能运维困难
瓶颈数据分析
- 某个方法在多个AUT中被调用。在每个单独的trace中,方法的总执行时间可能不会将其放在瓶颈列表的顶部,然而,当跨不同的跟踪进行分析时,根据它们对总执行时间的总体贡献,这些方法可能被视为瓶颈 [?]
- 通用瓶颈:比如官方math库
- 另一方面,特定的输入瓶颈难以找到源头,搜索空间很大
问题陈述
- 输入空间太大,少部分才能出发瓶颈
- 有些输入参数是无效的
后面有时间再补
ISSTA15 - GA-Prof - Automating Performance Bottleneck Detection usingSearch-Based Application Profiling