DistIA: A cost-effective dynamic impact analysis for distributed programs

DistIA: A cost-effective dynamic impact analysis for distributed programs
复制标题

DOI:
10.1145/2970276.2970352
复制
发表时间:
2016-08
期刊:
2016 31st IEEE/ACM International Conference on Automated Software Engineering (ASE)
影响因子:
--
通讯作者:
Haipeng Cai;D. Thain
Haipeng Cai;D. Thain
中科院分区:
其他
文献类型:
--
作者:
Haipeng Cai;D. Thain

文献摘要

被引文献

相似文献

动态影响分析是一种基本的技术,用于理解特定程序实体或对它们的更改对具体执行的程序其余部分的影响。然而,现有的技术是不适用的或非常有限的实用程序运行在多个并发进程的分布式程序。本文介绍了DISTIA,分布式系统的动态分析,预测传播的影响内和跨进程边界的部分排序分布式方法执行事件,推断因果关系的有序事件,并利用消息传递语义。我们将DISTIA应用于各种架构和大小的大型分布式系统,平均在一分钟内完成整个分析,并安全地将影响集大小相对于现有选项减少了43%以上,运行时开销不到8%。此外,两个案例研究初步证明了DISTIA的精度和它在分布式系统理解中的实用性。虽然保守,因此受到误报,DistIA平衡精度和效率,提供成本效益的选择,不断发展的分布式程序。
Dynamic impact analysis is a fundamental technique for understanding the impact of specific program entities, or changes to them, on the rest of the program for concrete executions. However, existing techniques are either inapplicable or of very limited utility for distributed programs running in multiple concurrent processes. This paper presents DISTIA, a dynamic analysis of distributed systems that predicts impacts propagated both within and across process boundaries by partially ordering distributed method-execution events, inferring causality from the ordered events, and exploiting message-passing semantics. We applied DISTIA to large distributed systems of various architectures and sizes, for which it on average finishes the entire analysis within one minute and safely reduces impact-set sizes by over 43% relative to existing options with run-time overhead less than 8%. Moreover, two case studies initially demonstrated the precision of DISTIA and its utility in distributed system understanding. While conservative thus subject to false positives, DistIA balances precision and efficiency to offer cost-effective options for evolving distributed programs.