无效率循环的性能诊断

Linhai Song, Shan Lu
{"title":"无效率循环的性能诊断","authors":"Linhai Song, Shan Lu","doi":"10.1109/ICSE.2017.41","DOIUrl":null,"url":null,"abstract":"Writing efficient software is difficult. Design and implementation defects cancause severe performance degradation. Unfortunately, existing performance diagnosis techniques like profilers are still preliminary. They can locate code regions that consume resources, but not the ones that waste resources. In this paper, we first design a root-causeand fix-strategy taxonomy for inefficient loops, one of the most common performance problems in the field. We then design a static-dynamic hybrid analysis tool, LDoctor, toprovide accurate performance diagnosis for loops. We further use sampling techniques to lower the run-time overhead withoutdegrading the accuracy or latency of LDoctor diagnosis. Evaluation using real-world performanceproblems shows that LDoctor can provide better coverage and accuracy thanexisting techniques, with low overhead.","PeriodicalId":6505,"journal":{"name":"2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE)","volume":"43 1","pages":"370-380"},"PeriodicalIF":0.0000,"publicationDate":"2017-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"47","resultStr":"{\"title\":\"Performance Diagnosis for Inefficient Loops\",\"authors\":\"Linhai Song, Shan Lu\",\"doi\":\"10.1109/ICSE.2017.41\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Writing efficient software is difficult. Design and implementation defects cancause severe performance degradation. Unfortunately, existing performance diagnosis techniques like profilers are still preliminary. They can locate code regions that consume resources, but not the ones that waste resources. In this paper, we first design a root-causeand fix-strategy taxonomy for inefficient loops, one of the most common performance problems in the field. We then design a static-dynamic hybrid analysis tool, LDoctor, toprovide accurate performance diagnosis for loops. We further use sampling techniques to lower the run-time overhead withoutdegrading the accuracy or latency of LDoctor diagnosis. Evaluation using real-world performanceproblems shows that LDoctor can provide better coverage and accuracy thanexisting techniques, with low overhead.\",\"PeriodicalId\":6505,\"journal\":{\"name\":\"2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE)\",\"volume\":\"43 1\",\"pages\":\"370-380\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2017-05-20\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"47\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICSE.2017.41\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSE.2017.41","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 47

摘要

编写高效的软件是困难的。设计和实现缺陷会导致严重的性能下降。不幸的是,现有的性能诊断技术(如分析器)仍处于初级阶段。它们可以定位消耗资源的代码区域,但不能定位浪费资源的代码区域。在本文中,我们首先为低效循环设计了一个根源和修复策略分类,低效循环是该领域最常见的性能问题之一。然后,我们设计了一个静态动态混合分析工具LDoctor,为回路提供准确的性能诊断。我们进一步使用采样技术来降低运行时开销,而不会降低LDoctor诊断的准确性或延迟。使用实际性能问题进行的评估表明,LDoctor可以提供比现有技术更好的覆盖率和准确性,并且开销较低。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Performance Diagnosis for Inefficient Loops
Writing efficient software is difficult. Design and implementation defects cancause severe performance degradation. Unfortunately, existing performance diagnosis techniques like profilers are still preliminary. They can locate code regions that consume resources, but not the ones that waste resources. In this paper, we first design a root-causeand fix-strategy taxonomy for inefficient loops, one of the most common performance problems in the field. We then design a static-dynamic hybrid analysis tool, LDoctor, toprovide accurate performance diagnosis for loops. We further use sampling techniques to lower the run-time overhead withoutdegrading the accuracy or latency of LDoctor diagnosis. Evaluation using real-world performanceproblems shows that LDoctor can provide better coverage and accuracy thanexisting techniques, with low overhead.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Adaptive Unpacking of Android Apps Symbolic Model Extraction for Web Application Verification On Cross-Stack Configuration Errors Syntactic and Semantic Differencing for Combinatorial Models of Test Designs Fuzzy Fine-Grained Code-History Analysis
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1