<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> <img src="images/analyze.gif"> PLDT - New and Noteworthy </h1>
<p>What's new in 2.1
<ul>
<li>MPI Code Templates
<li>UPC assistance tools
<li>Dynamic tool example of Performance Tools framework [tbd]...
</ul>

<p>What's new in 2.0
<ul>
<li>New single-menu UI for PLDT analysis features simplifies the editor toolbar.
<br><script> full("images/pldt-menu.gif")</script>
<br>&nbsp;
<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.
<br><img src="images/barrierMatches.gif">
<br>&nbsp;
<br><img src="images/barrierErrors.gif">
<br>&nbsp;
<br>For details, see <a href="barrier.html">MPI Barrier Analysis</a>.
<br>&nbsp;
<li>New project templates allow easy creation of MPI <i>and OpenMP</i> projects.
Sample source files can be added during project creation as well.
<br><img src="images/newProjectWizard.gif">
<br>&nbsp;
<li>MPI project settings page can add include files, build command, etc. to new MPI projects
<br><img src="images/mpiProjectSettings.gif">
<br>&nbsp;
<li>If CDT version is incorrect (!= 4.x) an error dialog complains.
<li>Welcome page includes pointers to information for PLDT.
<br><img src="images/welcomeOverview.gif">
<br><img src="images/welcomeC-pldt.gif">
<br>&nbsp;
<li>Artifact markers can be removed directly from the artifacts view.
<br><img src="images/removeMarkers.gif">
<br>&nbsp;
<li>Tracing is enabled.  <a href="tracing.html">See tracing instructions for how to turn this on.</a>



</ul>
<p>&nbsp;
<p><a href="toc.html">Back to Table of Contents</a>
</body>
</html>