blob: ced4a93148d928834ca9fe05bec6c2818a3f0423 [file] [log] [blame]
<html>
<head>
<title>
Running the MPI Tools within the Parallel Language Development Tools
</title>
<link rel="stylesheet" type="text/css" href="help.css">
<link rel="stylesheet" type="text/css" href="help.css">
<script type="text/javascript" src="thumb.js"> </script>
</head>
<body>
<h1> Running the MPI Tools within the Parallel Language Development Tools</h1>
<p>To run the PTP PLDT MPI Tools,
create a project (e.g a Managed Make C project), and
set the preferences and include paths as described in
<a href="setup.html">Setup for PTP MPI Tools</a>.
<p>The Parallel Language Development Tools hould work on Standard Make C projects as well, and
on C++ projects (Standard Make and Managed Make). The description here is for
a Managed Make C Project.
<p>Note: the terms "Managed Make" and "Standard Make" projects were more visibly used in CDT 3.1.
They are still there in CDT 4.0 but the names are usually hidden. By default a project "New C project"
will create a makefile for you, and thus is a "Managed Make" project; if you create a "Makefile project"
then that is what was formerly called a "Standard Make" project. Confused enough? Good.
<ol>
<li>Within the project, create a C file that includes MPI code. A sample is <a href="samples/testMPI.c">testMPI.c</a>
If you used the PLDT new project wizard to create an MPI project, then you probably already have one.
<p>Note: A sample C++ file with MPI calls
is <a href="samples/testMPIcpp.cpp">testMPIcpp.cpp</a>.
<br>A sample C++ file with MPI calls in ordinary C style
is <a href="samples/helloMPI_c_style.cpp">helloMPI_c_style.cpp</a>.
</ul>
<p>&nbsp;
<li>Select the source file to analyse, to find the MPI artifacts.
Click on the source file in the Project Explorer on the left to highlight it.
<p>Click the "Show MPI Artifacts" menu item in the PLDT icon menu in the tool bar.
<br><img src="images/pldt-menu.gif">
<br>(Note: if it complains that a source file is not selected the first time, select it again and retry.)
<p>The workbench with the selection and menu item is shown below:
<p><script> thumb("images/mpiButtons.gif",300)</script>
<li>The MPI Artifact View is opened, if it was not present.
It is populated with MPI artifacts found.
<p><script> thumb("images/mpiViewAnn.gif",300)</script>
<p>If no artifacts are found, check that:
<ol>
<li>The MPI preferences page lists the include file for the MPI installation
that your source code uses. This list is how the analysis determines what is
an "MPI artifact."
<li>Your project properties have the include path (the same one listed
in the MPI preferences page) listed.
Note that the MPI analysis may require this even if
the build procedure - such as a build command like 'mpicc' -
implicitly does this include for you during build.
</ol>
<p>&nbsp;
<li>Double click on any line in the MPI Artifact View
to navigate the editor to that line in the source file.
<p>&nbsp;
<li>Hover over the MPI Artifact identified in the source file
(by blue squiggles) to see additional information about that
function call, for example.
<br><img src="images/hover.gif" border=1>
<li>Rows in the MPI Artifact View can be sorted by any of the columns.
Click on the column heading to sort.
<li>Click the "Clear MPI Artifacts Markers" button (red X)
in the tool bar <i>of the MPI Artifact View</i> to remove all
the MPI artifacts.
<br><img src="images/clearMarkers.gif" border=1>
<li>You can run the analysis on another file and its markers
will be added to the view.
<li>You can run the analysis on more than one file (multiple selection)
or a container (folder or project), to analyse more than one file at a time.
Click on a project or a folder, then select the
"Show MPI Artifacts" action
to run it on all C source files in that folder.
<br> <img src="images/mpiMenu.gif">
<p>
<li><b>Content Assist</b><br>
Type an incomplete MPI function name e.g. "MPI_Ini"
and hit Ctrl-Space. The information that is shown
is populated with CDT completions including argument
types, but in addition, the PTP-MPI tools also provide
specific information about actual MPI constant values, etc.
where appropriate, and a yellow popup with additional
textual descriptive information about the function.
<br><img src="images/contentAssist.gif" border=1>
<p>
<li><b>Content sensitive help</b><br>
Also, if F1 is pressed when the cursor is within
a function name, a help view appears which shows additional information.
(In Linux press Ctrl-F1; in Mac Use Help button or use menu Help > Dynamic Help)
<br><img src="images/helpContSensHitF1.gif" border=1>
<p>Help View appears:
<br><img src="images/helpContSens.gif" border=1>
<p>Click on the function name to see more information:
<br><img src="images/helpContSensHitF1click.gif" border=1>
</ol>
<p>&nbsp;
<p>See also the
<a href="barrier.html">MPI Barrier Analysis</a> explanation.
<p>See also the <a href="setupOMP.html">OpenMP setup information</a>
or the <a href="runOMP.html">OpenMP run information</a>.
<p>&nbsp;<p>&nbsp;<p>&nbsp;
<p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a>
</body>
</html>