当前位置: X-MOL 学术Concurr. Comput. Pract. Exp. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Structural testing for communication events into loops of message-passing parallel programs
Concurrency and Computation: Practice and Experience ( IF 1.5 ) Pub Date : 2021-01-21 , DOI: 10.1002/cpe.6082
Silvia M. D. Diaz 1 , Paulo S. L. Souza 1 , Simone R. S. Souza 1
Affiliation  

There is a growing demand for correct parallel programs, mainly due to nowadays availability of parallel architectures. Structural testing allows identifying defects by analyzing the internal structures of a program. However, communication and synchronization in parallel programs bring new challenges to the testing activity, such as nondeterminism. Message-passing parallel programs require structural testing criteria to support test models and tools capable of covering synchronization events with dynamic behaviors. Testing such primitives inside loops in message-passing programs is still challenging with nontrivial solutions for criteria, models, and tools. This article proposes new structural testing criteria to guide the selection of test cases, improving the quality of message-passing programs by revealing nondeterminism-related defects present in loops. We present a new test model to support our criteria for structural testing of MPI-applications and implement the proposed criteria in the tool ValiMPI. The analysis of nondeterminism-related defects, paths inside loops, loop iterations, and nested loops allow us to establish a structured testing model. We validate the testing criteria through experimental studies using ValiMPI. Our results show that our criteria reveal unknown defects from communication and synchronization events in different loop iterations, increasing the quality of message-passing parallel programs.

中文翻译:

将通信事件结构测试到消息传递并行程序的循环中

对正确并行程序的需求不断增长,这主要是由于当今并行架构的可用性。结构测试允许通过分析程序的内部结构来识别缺陷。然而,并行程序中的通信和同步给测试活动带来了新的挑战,例如不确定性。消息传递并行程序需要结构测试标准来支持能够覆盖具有动态行为的同步事件的测试模型和工具。对于标准、模型和工具的非平凡解决方案,在消息传递程序的循环内测试此类原语仍然具有挑战性。本文提出了新的结构测试标准来指导测试用例的选择,通过揭示循环中存在的与不确定性相关的缺陷来提高消息传递程序的质量。我们提出了一个新的测试模型来支持我们对 MPI 应用程序进行结构测试的标准,并在工具 ValiMPI 中实施建议的标准。对非确定性相关缺陷、循环内路径、循环迭代和嵌套循环的分析使我们能够建立结构化的测试模型。我们通过使用 ValiMPI 的实验研究来验证测试标准。我们的结果表明,我们的标准揭示了来自不同循环迭代中的通信和同步事件的未知缺陷,从而提高了消息传递并行程序的质量。对非确定性相关缺陷、循环内路径、循环迭代和嵌套循环的分析使我们能够建立结构化的测试模型。我们通过使用 ValiMPI 的实验研究来验证测试标准。我们的结果表明,我们的标准揭示了来自不同循环迭代中的通信和同步事件的未知缺陷,从而提高了消息传递并行程序的质量。对非确定性相关缺陷、循环内路径、循环迭代和嵌套循环的分析使我们能够建立结构化的测试模型。我们通过使用 ValiMPI 的实验研究来验证测试标准。我们的结果表明,我们的标准揭示了来自不同循环迭代中的通信和同步事件的未知缺陷,从而提高了消息传递并行程序的质量。
更新日期:2021-01-21
down
wechat
bug