计算机与现代化

• 软件工程 • 上一篇    下一篇

面向共享内存并行程序的测试技术

  

  1. (长沙环境保护职业技术学院环境信息系,湖南 长沙 410001)
  • 收稿日期:2016-01-27 出版日期:2016-08-18 发布日期:2016-08-11
  • 作者简介:李婧(1982-),女(土家族),湖南常德人,长沙环境保护职业技术学院环境信息系讲师,硕士,研究方向:软件工程; 王建平(1966-),男,教授,硕士,研究方向:软件工程。
  • 基金资助:
    湖南省教育厅科研项目(15C0017)

Testing Technique for Shared Memory Concurrent Programs

  1. (Department of Environmental Information, Changsha Environmental Protection College, Changsha 410001, China)
  • Received:2016-01-27 Online:2016-08-18 Published:2016-08-11

摘要: 随着并行编程越来越普及,并行程序的测试也变得越来越重要。本文面向共享内存的并行程序,研究一种新的并行程序测试技术,设计了工具CPTester,采用冗余分析方法避免重复的结果。和已有工作不同的是CPTester能够自动生成每一个并行bug的上下文信息,对程序员理解并修复一个并行bug具有重要意义。将CPTester在一些真实的并行程序上进行实验评测,结果显示CPTester能够有效地检测到程序中的并行bug,且每一个并行bug都有相应的上下文信息来描述该bug触发的根本原因。

关键词: 并行程序, 共享内存, 程序测试, 冗余分析, 上下文信息

Abstract: As programming concurrent programs becomes pervasive, testing concurrent programs is also becoming important. This paper focuses on the concurrent programs that are based on shared memory. A new concurrent program testing technique is researched, and a tool called CPTester is designed for concurrent programs. CPTester uses redundancy analysis approach to avoid repeated results. Different from previous work, CPTester can generate the context information for every concurrent bug automatically, which is useful for programmers to understand and fix the concurrent bug. CPTester is evaluated on a number of real concurrent programs. Results show that CPTester can effectively detect the concurrent bugs in concurrent programs. Also, the context information about the root cause of each concurrent bug can be described.

Key words: concurrent program, shared memory, program testing, redundancy analysis, context information

中图分类号: