<html>
<head>
<title>
PTP Parallel Language Development Tools 
</title>
	<link rel="stylesheet" type="text/css" href="help.css">
	<script type="text/javascript" src="thumb.js"> </script>
	</head>
<body>
<h1 id="top"> <img src="images/analyze.gif"> PTP Parallel Language Development Tools </h1>
<p>Release 2.0
<p>The PTP Parallel Language Development Tools (PLDT) provide
tools to aid in MPI Programming and other parallel languages and tools.
<br>Features of the PLDT include:
<ul>
<li>Analysis of C and C++ code to determine the location of MPI and OpenMP Artifacts
<li>"Artifact View" indicates locations of Artifacts found
in source code
<li>Navigation to source code location of artifacts
<li>Content assist via Cntl-Space completes API names
while typing, and fills in arguments too.
<li>Hover help shows API names, arguments, and descriptions.
<li>Reference information about the MPI and OpenMP calls via F1 (Cntl-F1 on Linux; Help key on Mac)

<li>OpenMP problems view of common errors, OpenMP "show #pragma region" action,
OpenMP "Show Concurrency" action.
<li>CDT "New C Project" wizard includes a  wizard page that can 
automatically add in the include paths etc. for MPI projects.

<p>The newest features (2.0) include:
<li>MPI Barrier Analysis detects potential deadlocks in MPI applications,
and shows barrier matches, barrier errors, and paths of all barrier
matching sets.  Includes detections across multiple functions and source files.
<li>New project wizard can include sample MPI and OpenMP source files 
and set up the projects to save time.
<li>New welcome pages introduce new Eclipse users to PLDT.
<li>New single-menu UI for PLDT analysis features simplifies the editor toolbar.
<br><img src="images/pldt-menu.gif">
</ul>
For more details, see <a href="whatsnew.html">What's new</a>
<h2>
Pre-requisites:
</h2>
<p>PLDT 2.0 requires the base Eclipse platform, the CDT, and MPI and/or OpenMP.
<ul>
<li><b>Eclipse</b> platform: Version  3.3 or later
<li><b>CDT:</b>
Version 4.0.2 or later for C/C++ files.  (Wherever CDT is mentioned, Photran projects and files,
for C/C++, if based on Eclipse 3.3/CDT 4.0.x, should also work, but not much testing has yet been done.)

<li><b>MPI:</b>
Get MPI and its header file, a version that runs on
your system (e.g. OpenMPI for Linux/Mac; MPICH2 for win32)
<ul>
<li>Make sure it's in your path 
<li>You may need to install it in a directory such that there are no spaces in the path
(that is, not in 'Program Files' etc.)
</ul>
<li><b>OpenMP:</b>
The PTP PLDT OpenMP tools also  need the OpenMP header file, similar to the MPI
pre-requisites above.

</ul>
<p>Note that <i>running</i> MPI or OpenMP is not really required for the PLDT
to function and provide analysis and help with MPI and OpenMP development.
Just the header files are required in order to know which "artifacts" should
be located.
<p>To run the core part of PTP (Parallel Tools Platform, <a href="http://eclipse.org/ptp">http://eclipse.org/ptp</a>,
to run and debug parallel programs on the local machine), you need whatever runtime it requires.  Currently 
(2.0, January 2008) this is OpenMPI, which is available for Linux and Mac Only.  
But for PLDT, this is not required, and PLDT will work
on Windows as well.


<h2>Help Topics</h2>
<p><a href="http://wiki.eclipse.org/PTP/release_notes/2.0">Basic instructions on installing Eclipse, CDT, PTP, and PLDT</a>
from the Eclipse PTP web site.
<p>The following instructions describe setup and run information.
<h3>MPI</h3>
<ul><li>
<a href="setup.html">Setup for building and running PTP MPI Tools</a>
</li>
<li>
<a href="run.html">Running PTP MPI Tools</a></li>
<li>
<a href="barrier.html">MPI Barrier Analysis</a></li>
</ul>
<p>
<h3>OpenMP</h3>
<ul><li>
<a href="setupOMP.html">Setup for building and running PTP OpenMP Tools</a>
</li>
<li>
<a href="runOMP.html">Running PTP OpenMP Tools</a></li>
<li>
<a href="openMPextra.html">Additional OpenMP Tools </a>
</li>
</ul>
<a href="whatsnew.html">New and Noteworthy </a></li> - what's new in PLDT 2.0
<h3>Misplaced icon?</h3>
<p>Note: if, after installing PLDT, the PLDT menu icon is misplaced over on the left side
of the Eclipse toolbar:
<br><img src="images/pldtIconMisplaced.gif">
<br>You can put it in its proper place by selecting Window > Reset Perspective.
<p>&nbsp;
<p>&nbsp;
<p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a>
</body>
</html>