author	 = {Tareq Kellyeh},
	title	 = {{Enabling Single Process Testing of MPI in Massive Parallel Applications}},
	advisors	 = {Julian Kunkel and Christian Hovy},
	year	 = {2018},
	month	 = {03},
	school	 = {Universität Hamburg},
	howpublished	 = {{Online \url{}}},
	type	 = {Master's Thesis},
	abstract	 = {While many parallel programming models exist, the dominant model is MPI. It has been considered as the de facto standard for building parallel programs that use message passing. In spite of this popularity, there is a lack of tools that support testing of MPI programs. When considering unit testing, it is not widely applied to scientific programs, even though it is an established practice in professional software development. However, with MPI, the communicated data comes from different processes which increases the effort of creating small test units. In this thesis, a solution to reduce the effort of testing massive parallel applications is developed. By applying this solution, any selected piece of MPI parallelized code that forms a part of such applications can be tested. The used method is based on the technique: Capture and Replay. This technique extracts data while executing the application and uses this data as an input for the MPI communications in the test phase. The structures, that contain the extracted data, are generated automatically. As a step towards enabling Unit Testing of MPI applications, this thesis supports the user in writing appropriate test units and executing them by a single process solely. In this way, repeating the expensive parallel execution of MPI programs can be avoided. This step is considered as the most important contribution of this thesis.},