High-Performance Computing (HPC) recently has become important in several sectors, including the scientific and manufacturing fields. The continuous growth in building more powerful super machines has become noticeable, and the Exascale supercomputer will be feasible in the next few years. As a result, building massively parallel systems becomes even more important to keep up with the upcoming Exascale-related technologies. For building such systems, a combination of programming models is needed to increase the system's parallelism, especially dual and tri-level programming models to increase parallelism in heterogeneous systems that include CPUs and GPUs. There are several combinations of the dual-programming model; one of them is MPI+ OpenACC. This combination has several features that increase the application's parallelism concerning heterogeneous architecture and support different platforms with more performance, productivity, and programmability. However, building systems with different programming models are error-prone and difficult and are also hard to test. Also, testing parallel applications is already a difficult task because parallel errors are hard to detect due to the non-determined behavior of the parallel application. Integrating more than one programming model inside the same application makes even it more difficult to test because this integration could come with a new type of errors. Our main contribution is to identify and categorize OpenACC run-time errors and determine their causes with a brief explanation for the first time in research. Also, we proposed a solution for detecting run-time errors in application implemented in the dual-programming model. Our solution based on using hybrid testing techniques to discover real and potential run-time errors. Finally, to the best of our knowledge, there is no parallel testing tool built to test applications programmed by using the dual-programming model MPI + OpenACC or any tri-level programming model or even the OpenACC programming model to detect their run-time errors. Also, OpenACC errors have not been classified or identified before.
CITATION STYLE
Alghamdi, A. M., & Eassa, F. E. (2019). A parallel hybrid-testing tool architecture for a dual-programming model. International Journal of Advanced Computer Science and Applications, 10(4), 394–400. https://doi.org/10.14569/ijacsa.2019.0100448
Mendeley helps you to discover research relevant for your work.