当前位置: X-MOL 学术ACM Trans. Softw. Eng. Methodol. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Test Data Generation for Path Coverage of MPI Programs Using SAEO
ACM Transactions on Software Engineering and Methodology ( IF 6.6 ) Pub Date : 2021-01-03 , DOI: 10.1145/3423132
Dunwei Gong 1 , Baicai Sun 2 , Xiangjuan Yao 3 , Tian Tian 4
Affiliation  

Message-passing interface (MPI) programs, a typical kind of parallel programs, have been commonly used in various applications. However, it generally takes exhaustive computation to run these programs when generating test data to test them. In this article, we propose a method of test data generation for path coverage of MPI programs using surrogate-assisted evolutionary optimization, which can efficiently generate test data with high quality. We first divide a sample set of a program into a number of clusters according to the multi-mode characteristic of the coverage problem, with each cluster training a surrogate model. Then, we estimate the fitness of each individual using one or more surrogate models when generating test data through evolving a population. Finally, a small number of representative individuals are selected to execute the program, with the purpose of obtaining their real fitness, to guide the subsequent evolution of the population. We apply the proposed method to seven benchmark MPI programs and compare it with several state-of-the-art approaches. The experimental results show that the proposed method can generate test data with reduced computation, thus improving the testing efficiency.

中文翻译:

使用 SAEO 生成 MPI 程序路径覆盖的测试数据

消息传递接口(MPI)程序是一种典型的并行程序,已普遍用于各种应用程序中。然而,在生成测试数据来测试它们时,运行这些程序通常需要进行详尽的计算。在本文中,我们提出了一种使用代理辅助进化优化为 MPI 程序的路径覆盖生成测试数据的方法,该方法可以有效地生成高质量的测试数据。我们首先根据覆盖问题的多模特性将程序的样本集划分为若干个簇,每个簇训练一个代理模型。然后,在通过进化种群生成测试数据时,我们使用一个或多个代理模型估计每个个体的适应度。最后,选择少数具有代表性的个体执行程序,目的是获得其真正的​​适应度,以指导种群的后续进化。我们将所提出的方法应用于七个基准 MPI 程序,并将其与几种最先进的方法进行比较。实验结果表明,该方法可以在减少计算量的情况下生成测试数据,从而提高测试效率。
更新日期:2021-01-03
down
wechat
bug