-
Notifications
You must be signed in to change notification settings - Fork 0
Progress Report 2018.09.30
作者中Michael Pradel是老板,来自德国TU Darmstadt大学,他的组近些年发了很多顶会,一直在做有关性能的工作。他的多数论文做的是故障诊断相关。 文章的motivation就是js应用广泛,其性能十分关键。调研了98个已修复的js的bug。目的在于给出一些insight,指导后续研究者的工作。调研的角度是:1.性能问题的原因。2.修复的代码行数,及复杂程度变化。(非复杂度)3.提高在A平台的性能,是否反而降低了B平台的性能。4.是否存在bug的pattern(也就是修复的pattern)。结论大概可以总结为:1.性能bug大都是因用户是用api不当导致,这些bug修复起来只需要修改几行代码,而且跨平台修复基本上都可以同时提升性能,而很少起到反作用,这些修复又有pattern可循。因此作者给的solution就是总结了10个bug的pattern,去找代码里新的bug,并找到了139个。(没有提到是否被开发者确认)
1.作者研究的js里面的性能bug大都是因用户是用api不当导致的,其中有很多种不当的方式,作者在这个上面做文章。2.全部的10个pattern全都是“实现统一功能的低效api”,也就是说,作者解决的是js里面,实现某个功能,使用了低效的api一类的性能问题。(某个功能可以用多个api实现)这个实验部分的方法和lushan的低效循环那篇类似。都是用pattern分析代码找新的bug。
下图为10个pattern:
目前约120个issue 密码:5j10 这次扩展了gcc的issue,其中大部分都满足pattern-counterproductive。gcc的配置基本都是bool或者enum类型。 hanxue提供的80G一个虚拟机还没下载好,我利用国庆解决一下。