期刊文献+

X10程序的差别分析方法

Program Differencing for X10
下载PDF
导出
摘要 程序差别分析是程序调试的常见手段,其主要用于分析程序不同版本之间的差异信息.然而,将现有程序差别分析算法扩展到并行程序语言还面临众多挑战.其主要原因在于并行程序复杂性较高,且存在支持并行活动的特殊机制,如地址(或线程)、活动、同步等,从而为有效进行程序差别分析设置了障碍.文中研究基于PGAS模型的X10并行程序的程序差别分析方法,并设计了一种语句级的、针对X10程序的程序差别分析算法X10Diff.X10Diff包括下列步骤:(1)匹配原程序和修改后程序中的类、接口、方法及地址;(2)为待分析程序片段构建基于地址的程序流图,并建立相应简化图;(3)迭代扩展并比较简化图,并将差别信息定位到代码中. Program differencing is a widely used technique for program debugging, while it is still not easily used for parallel programs. One main reason is that a parallel program can be complex, and some mechanisms (e. g. , place, activity, clock, and barrier) also set barriers for program differencing. In this paper we focus on program differencing for X10 parallel programming language, and design an algorithm for differencing of X10 programs. The algorithm contains three steps: (1) match the places, classes, interfaces, methods, and places between programs of two versions; (2) construct the extended program diagrams for the programs and simplify them to simplified diagrams; (3) iteratively unfold and compare the simplified diagrams and identify the differences between the programs.
出处 《计算机学报》 EI CSCD 北大核心 2015年第5期1082-1092,共11页 Chinese Journal of Computers
基金 国家“九七三”重点基础研究发展规划项目基金(2015CB352203) 国家自然科学基金(91118004,61100051,61272102) 中国科学院软件研究所计算机科学国家重点实验室开放基金(SYSKF1101) 上海市计算机软件评测重点实验室开放基金(SSTL2011_02)资助~~
关键词 程序差别分析 X10 程序流图 软件测试 程序调试 program differencing X10 program diagram software test program debugging
  • 相关文献

参考文献13

  • 1Myers E W. An O(ND) Difference algorithm and its variations. Algorithmica, 1986, 1(2): 251-266.
  • 2Wang Z, Pierce K, McFarling S. BMAT-A binary matching tool for stale profile propagation. Journal of Instruction-Level Parallelism, 2000, 2(1) : 1-20.
  • 3Jackson D, Ladd D. A. Semarttic diff: A tool for summarizing the effects of modifications//Proceedings of the Internation Conference on Software Maintenance. Victoria, Canda, 1994:243-252.
  • 4Horwitz S. Identifying the semantic and textual differences between two versions of a program//Proeeedings of the ACM SIGPLAN'90 Conference on Programming Language Design and Implementation. White Plains, New York, USA, 1990: 234-246.
  • 5Sun Q, Chen Y, Zhao J. Constraint-based locality analysis for Xl0 programs//Proceedings of the ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation. Rome, Italy, 2013:137-146.
  • 6Duley A, Spandikow C, Kim M. A program differencing algorithm for verilog HDL//Proceedings of the IEEE/ACM International Conference on Automated Software Engineering. Antwerp, Belgium, 2010:477-486.
  • 7Tsantalis N, Negara N, Stroulia E. WebDiff A generic differencing service for software artifacts//Proceedings of the 27th IEEE International Conference on Software Maintenance (ICSM'2011). Williamsburg, USA, 2011:586-589.
  • 8Xing Z, Stroulia E. UMLDiff: An algorithm for object- oriented design differencing//Proceedings of the 20th IEEE/ ACM International Conference on Automated Software Engineering (ASE 2005). Long Beach, USA, 2005:54-65.
  • 9Apiwattanapong T, Orso A, Harrold M J. A differencing algorithm for object-oriented programs//Proceedings of the 19th IEEE International Conference on Automated Software Engineering. Linz, Austria, 2004:2-13.
  • 10Gorg M, Zhao J. Identifying semantic differences in AspectJ programs//Proceedings of the 8th International Symposium on Software Testing and Analysis. Chicago, USA, 2009: 25-36.

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部