Title
MPI Correctness Checking with Marmot.
Abstract
Parallel programming is a complex, and since the multi-core era has dawned, also a more and more common task that can be alleviated considerably by tools Supporting the application development and porting process. The Message Passing Interface (MPI) is widely used to write parallel programs using message passing, but it does not guarantee portability between different MPI implementations. When an application runs Without any problems on one platform but crashes or gives wrong results on another platform, developers tend to blame the compiler/architecture/MPI implementation. In many cases the problem is a subtle programming error in the application undetected on the platforms used previously. Finding this bug can be a very strenuous and difficult task. In this paper we present the Marmot tool, an automated correctness checker for MPI applications during runtime. Examples of violations of the MPI standard are the introduction of irreproducibility, deadlocks, incorrect management of resources such as communicators, groups, datatypes etc. or the use of non-portable constructs. To cover different aspects of correctness debugging in a user-friendly environment, also in hybrid applications using both MPI and OpenMP, we also work on coupling Marmot with a parallel debugger (DDT) or a threading tool (Intel (R) Thread Checker). Some examples of experiences with real-world applications are given.
Year
DOI
Venue
2008
10.1007/978-3-540-68564-7_5
TOOLS FOR HIGH PERFORMANCE COMPUTING
Field
DocType
ISBN
Programming language,Debugger,Computer science,Correctness,Compiler,Message Passing Interface,Software portability,Porting,Message passing,Debugging
Conference
978-3-540-68561-6 (Print) 978-3-
Citations 
PageRank 
References 
4
0.45
14
Authors
6
Name
Order
Citations
PageRank
Bettina Krammer112914.24
Tobias Hilbrich2687.93
Valentin Himmler3304.21
Blasius Czink440.45
Kiril Dichev5275.06
Matthias S. Müller646357.74