blob: ced6cce294a38f63a18e0c9a5cf1c2dbe544dbec [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="help.css">
<title>PTP: Graphical Explorer of MPI Programs (GEM)</title>
</head>
<body>
<a name="top"></a>
<table cellspacing="5">
<tr>
<td>
<img src="images/trident_transparent.png">
</td>
<td>
<h1>PTP: Graphical Explorer of MPI Programs (GEM)</h1>
</td>
</tr>
<tr>
<td></td>
<td>
<h3>v1.3.0</h3>
</td>
</tr>
</table>
<br>
<p>
Graphical Explorer of MPI Programs (GEM), part of the
<a href="PLUGINS_ROOT/org.eclipse.ptp.doc.user/html/toc.html">Parallel Tools Platform</a> (PTP),
is a graphical front end for In-situ Partial Order (ISP), a dynamic formal
verification tool for MPI C/C++ programs, developed at the University of Utah. GEM
greatly enhances the usability of ISP by providing an intuitive graphical way to track down
bugs in MPI C/C++ programs, examine post-runtime results and to analyze MPI runtime
behavior.
</p>
<p>
GEM can be used by anyone who can write simple MPI C/C++ programs, and requires no
special training. GEM allows you to formally verify your MPI C/C++ programs automatically
without any extra efforts on your part. No code instrumentation is necessary. Gem
will definitively flag the following errors and warnings:
</p>
<ul>
<li>Deadlocks</li>
<li>Functionally Irrelevant Barriers</li>
<li>MPI Object Leaks</li>
<li>Local Assertion Violations</li>
</ul>
<p>
In addition, GEM helps you understand as well as step through all relevant process interleavings
(schedules). Notice our use of the word <i>relevant</i>: even a short MPI program may have too many
(an &quot;exponential number&quot;) interleavings. For example, an MPI program with five processes, each
containing five MPI calls, can have well in excess of 1000 interleavings. However, ISP generates
a new interleaving only when it represents a truly new (as yet unexamined) behavior in your programs.
</p>
<h2>Overview, Background, and Setup information</h2>
<ol>
<li><a href="overview.html">GEM Overview</a></li>
<li><a href="prereqs.html">GEM Prerequisites</a></li>
<li><a href="gettingStarted.html">Getting Started</a></li>
</ol>
<h2>Help Topics</h2>
<ol>
<li><a href="setNumProcs.html">Setting the Number of Processes</a></li>
<li><a href="analyzerView.html">Analyzer View</a></li>
<li><a href="browserView.html">Browser View</a></li>
<li><a href="consoleView.html">Console View</a></li>
<li><a href="output.html">Understanding Console Output</a></li>
<li><a href="happensBeforeViewer.html">Happens Before (HB) Viewer</a></li>
<li><a href="makefileSupport.html">Makefile Project Support</a></li>
<li><a href="remoteProjects.html">Remote and Synchronized Projects</a></li>
<li><a href="preferences.html">Preferences</a></li>
<li><a href="troubleshooting.html">Troubleshooting</a></li>
</ol>
<p>Other related topics:</p>
<ol>
<li><a href="http://www.eclipse.org/ptp/downloads.php">Latest Release of GEM</a></li>
<li><a href="http://www.cs.utah.edu/formal_verification/ISP-release/">Latest Release of ISP</a></li>
<li><a href="http://www.cs.utah.edu/formal_verification/">Gauss Group Home</a> - Includes all current work and publications</li>
<li><a href="http://www.cs.utah.edu/">University of Utah School of Computing</a></li>
</ol>
<p>&nbsp;</p>
<p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a></p>
<p>&nbsp;</p>
<hr>
<center>
<p>
School of Computing * 50 S. Central Campus Dr. Rm. 3190 * Salt Lake City, UT
84112 * <A href="mailto:isp-dev@cs.utah.edu">isp-dev@cs.utah.edu</a><br>
<a href="http://www.eclipse.org/org/documents/epl-v10.php">License</a>
</p>
</center>
</body>
</html>