blob: 2ce6b96d023b37ee39c9bceb49a92b46f32d6820 [file] [log] [blame]
<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 7.0
<p>The PTP Parallel Language Development Tools (PLDT) provide
tools to aid in MPI, OpenMP, UPC Programming and other parallel languages and tools.
PLDT is part of the <a href="PLUGINS_ROOT/org.eclipse.ptp.doc.user/html/toc.html">Parallel Tools Platform</a>.
<br>Features of the PLDT include:
<ul>
<li>Analysis of C, C++ and Fortran code to determine the location of artifacts (APIs and other appropriate items in code) for the following parallel programming systems:
<ul>
<li>MPI
<li>OpenMP
<li>UPC
<li>OpenACC
<li>OpenSHMEM
<li> ... and others as provided by optional extensions.
</ul>
<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 instructs the user on argument types too.
<li>Code templates provide convenient code snippets and idioms.
<li>Hover help shows API names, arguments, and descriptions.
<li>Reference information about APIs via F1 (Cntl-F1 on Linux; Help key on Mac)
<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>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 and OpenMP projects.
(CDT includes some new project wizards for UPC as well.)
<li>New project wizard can include sample MPI and OpenMP source files
and set up the projects to save time.
<li>Welcome pages introduce new Eclipse users to PLDT.
<li>Single-menu UI for PLDT analysis features simplifies the editor toolbar.
<br><img src="images/pldt-menu.png">
<br>&nbsp;
</ul>
See also <a href="whatsnew.html">New and Noteworthy </a> - what's new in this release of PLDT.
<h2>
Pre-requisites:
</h2>
<p>PLDT requires the base Eclipse platform, the CDT, and (optionally) header files for the API set you wish to use (MPI, OpenMP, etc.)
<p>PLDT is included in most installations of PTP, and is most easily installed with the
<b>Eclipse for Parallel Application Developers</b> package available on the <a href="http://eclipse.org/downloads">
Eclipse download page.</a>.
<ul>
<li><b>Eclipse</b> platform: Version 4.3 (Kepler)
<li><b>CDT:</b>
Version 8.2 or later for C/C++ files. (Wherever CDT is mentioned, Photran projects and files,
for C/C++, if based on Eclipse 4.3/CDT 8.2 or later, should also work, but not much testing has yet been done.)
<li><b>MPI:</b>
MPI header file is optional but for local projects its existence can be used for artifact determination (""what's an MPI API?).
See preference pages. (Most artifact identification is now done by recognizing the
standard prefix, e.g. "MPI_" instead of locating APIs in header files.
This is customizable in Preferences.)
<ul><li>
MPI and its header file, a version that runs on
your system (e.g. OpenMPI for Linux/Mac; MPICH2 for win32).
</li></ul>
<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 (optionally) need the OpenMP header file.
<li><b>UPC:</b>
Header file is now optional for UPC artifact identification.
</ul>
<p>Note that <i>running</i> MPI, UPC or OpenMP (etc.) is not really required for the PLDT
to function and provide analysis and help with parallel development.
Just the header files are required (in some cases these are now optional) 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
this includes OpenMPI, which is available for Linux and Mac Only, but via PTP Remote Tools and/or RDT (Remote Development Tools),
other systems can be accessed remotely, and don't need to be installed on the same machine where Eclipse is installed.
<p>For PLDT, a runtime system is not required, and PLDT will work (e.g. for development and analysis only) on Windows as well.
<h2>Miscellaneous Topics</h2>
<h3>Misplaced menu 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><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a>
</body>
</html>