Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "PTP/release notes/3.0"

(Install other features)
(Download and install Eclipse)
 
(117 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== Under Construction ==
 
This document is currently under construction, to bring it up to Eclipse 3.5 / CDT 6.0.1 / RSE 3.1  etc etc
 
 
 
== PTP Installation ==
 
== PTP Installation ==
 +
 +
This installation describes how to install PTP and its pre-requisites.  This is intended for PTP users.  If you are a PTP Developer and want to build PTP from the plug-ins yourself, see [[PTP/environment_setup_30 | PTP 3.0 Development Environment Setup]]
  
 
The installation process for PTP depends on a number of factors, including the versions of software you have installed on your system, your operating system, and the types of target systems you want to use. The basic installation steps are:
 
The installation process for PTP depends on a number of factors, including the versions of software you have installed on your system, your operating system, and the types of target systems you want to use. The basic installation steps are:
Line 24: Line 23:
  
 
==== Download and install Eclipse ====
 
==== Download and install Eclipse ====
Download Eclipse 3.5 (Galileo) from http://download.eclipse.org/eclipse/downloads/
+
Download [http://download.eclipse.org/eclipse/downloads/drops/R-3.5.2-201002111343/index.php Eclipse 3.5 (Galileo)]
 +
 
 +
We recommend either:
 +
* "Eclipse Classic" - if you also plan to do Java and/or plugin development, or
 +
* "Eclipse IDE for C/C++ Developers" - only includes support for C/C++, which is simpler and smaller
  
 
==== Unpack and launch Eclipse  ====
 
==== Unpack and launch Eclipse  ====
 
After downloading and extracting Eclipse (zip or tar file), there's nothing else to the installation process from the Eclipse side. In the extracted folder, simply run the eclipse executable file. It will ask for a workspace location; the default is fine.
 
After downloading and extracting Eclipse (zip or tar file), there's nothing else to the installation process from the Eclipse side. In the extracted folder, simply run the eclipse executable file. It will ask for a workspace location; the default is fine.
  
==== Install other features ====
+
==== Install PTP and its Pre-requisite features ====
First, download the most recent build of CDT 6.0.1 from http://download.eclipse.org/tools/cdt/builds/6.0.1/index.html - save the cdt-master-xxx.zip file, you will use it in the eclipse install procedure below
+
Launch Eclipse, then follow the instructions below.
  
Launch eclipse and do the following:
+
''Note: The "Install New Software" Dialog in Eclipse 3.5 (Galileo) can be confusing when installing from multiple update sites at the same time, which is why we recommend installing each component separately. If you wish to install them all at the same time, add each site if it is not already listed, then use the "Work with:" dropdown box to choose "-- All Available Sites--". You can then check items from the multiple update sites. If you do this, make sure items you check while perusing one update site still stay checked after looking thru another one.''
# Open Help > Install New Software ...
+
 
# To install CDT 6.0.1
+
For offline installation of pre-reqs, download the following archived update sites:
#* Click "Add..." to add an update site
+
# [http://download.eclipse.org/tools/ptp/rse-3.1-updateSite.zip RSE 3.1.1 update site archive]
#* In the resulting dialog, to install CDT, click "Archive..." and navigate to the location of the cdt-master-xxx.zip file you downloaded
+
# [http://download.eclipse.org/tools/cdt/builds/6.0.2/index.html CDT 6.0.2]
#** Check all the features you want
+
#* Save the <code>cdt-master-xxx.zip</code> file to a known location
#** Note that if you are installing the PTP PLDT (analysis tools), you'll need UPC, so be sure to check, under Optional Features, "Unified Parallel C Support"
+
Installation steps:
#** Suggestion: under "CDT Optional Features" uncheck "Eclipse CDT Testing Feature" (can be confusing/annoying for users)
+
# Install Remote System Explorer (RSE) 3.1.1 from the Galileo update site (or the archive downloaded above)
#** OK, next, next, accept license, finish, restart
+
#* Open "Help > Install New Software..."
# To install RSE 3.1
+
#* In the "Work With" drop-down box, select the Galileo Site.
#* Install New Software again...
+
#* Open "General Purpose Tools"  
#* Open "General Purpose Tools" (or "Mobile and Device Development" -- it's under both)
+
 
#* Check "Remote System Explorer End-User Runtime"
 
#* Check "Remote System Explorer End-User Runtime"
#* Next, Next, accept license, Finish, restart
+
#* Finish the install by following the prompts
 
+
#** You don't need to restart Eclipse
=== Install Parallel Tools Platform (PTP)  ===
+
# Install the C/C++ Development Tools (CDT) 6.0.2
 
+
#* You can install it from a downloaded archive or from the Galileo update site.
Installation of PTP is in two parts. The first part comprises installing PTP into your Eclipse distribution on the local machine. The second part comprises installing optional components on the target machine you wish to use with PTP. This target machine could be the same as that running Eclipse, or a remote system.
+
#** The Galileo update site (already in your list of update sites on most platforms) contains only the Main Features of CDT
 
+
#** The full CDT 6.0.2 archive (download instructions above) contains the optional features as well
NOTE: Installing the Remote Development Tools (RDT) is covered in another section [[#Installing_the_Remote_Development_Tools_(RDT)|below]]. -- or, you can install it now with PTP
+
#* Open "Help > Install New Software..."
 
+
==== Installing PTP ====
+
 
+
Download the latest PTP build from  http://wiki.eclipse.org/PTP/builds/3.0.0 - it will be a ptp-master-xxx.zip file
+
 
+
# Open Help > Install New Software ...
+
# To install PTP 3.0
+
 
#* Click "Add..." to add an update site
 
#* Click "Add..." to add an update site
#* In the resulting dialog, to install PTPT, click "Archive..." and navigate to the location of the ptp-master-xxx.zip file you downloaded
+
#* Now do either of the following:
#** Check all the features you want
+
#** '''Install from Galileo update site''' - Select the Galileo update site to install the Main Features of CDT
#** OK, next, next, accept license, finish, restart
+
#*** In the "Work With" drop-down box, select the Galileo Site.
 
+
#*** Open "Programming Languages"
== Older info below here ==
+
#*** Check "Eclipse C/C++ Development Tools"
Below this has not been sanity-checked for Eclipse 3.5 / CDT 6.0 / RSE 3.1 / PTP 3.0
+
#*** Finish the install by following the prompts
 
+
#**** You don't need to restart Eclipse yet.
==What's new in PTP 3.0 ==
+
#** ''' Install from downloaded archive''' - In the resulting dialog, click "Archive..." and navigate to the location of the <code>cdt-master-xxx.zip</code> file you downloaded. This will fill in the "Location" field.  The "Name" field is optional.
 
+
#*** Check each of the features you want, or check the main categories to install everything.
TBD
+
#**** Note that if you are installing all of the Parallel Language Development Tools (PLDT), you'll need UPC, so be sure to check "Unified Parallel C Support" (under "CDT Optional Features")
 +
#**** Suggestion: under "CDT Optional Features" select everything, but uncheck "Eclipse CDT Testing Feature" (can be confusing/annoying for users)
 +
#*** Finish the install by following the prompts
 +
#*** You don't need to restart Eclipse yet.
 +
# Install PTP 3.0
 +
#* Open "Help > Install New Software..."
 +
#* Click "Add..." to add an update site
 +
#* Enter the location of the PTP update site: http://download.eclipse.org/tools/ptp/releases/galileo
 +
#** The "Name" field can contain anything you want
 +
#* Check "Fortran Development Tools (Photran)" if you want to add Fortran support. See the [[PTP/photran/documentation/photran5 | Photran 5.0 User's Guide]] for more information on installing and using Photran
 +
#* Check "Parallel Tools Platform" to add PTP
 +
#* Finish the install by following the prompts
 +
#** You should restart Eclipse when prompted.
  
 
==Prerequisites==
 
==Prerequisites==
Line 102: Line 109:
 
|}
 
|}
 
| 1.5 or later
 
| 1.5 or later
|
 
{|
 
 
| 3.5
 
| 3.5
|-
+
| 6.0.1
| 3.3 (limited)
+
| 3.1
|}
+
|
+
{|
+
| 6.0
+
|-
+
| 4.0.x (limited)
+
|}
+
| 3.0
+
 
|
 
|
 
{|
 
{|
Line 145: Line 142:
 
|}
 
|}
 
| 1.5 or later
 
| 1.5 or later
| 3.4.1
+
| 3.5
| 5.0.2
+
| 6.0.2
| 3.0
+
| 3.1
 
| N/A
 
| N/A
 
| N/A
 
| N/A
 
|-
 
|-
| Cell B.E. IDE
 
|
 
{|
 
| Linux
 
|-
 
| Mac OS X
 
|-
 
| Windows
 
 
|}
 
|}
|
 
{|
 
| Linux (Fedora Core 9)
 
|}
 
| 1.5 or later
 
| 3.4.1
 
| 5.0.2
 
| N/A
 
| N/A
 
| Cell B.E. SDK 3.1
 
|-
 
|}
 
 
===Install OpenMPI===
 
(Updated 8/18/09)
 
If you are using OpenMPI, install it per directions on the [http://openmpi.org OpenMPI website]  -- or see below.
 
Note that previous versions of PTP required you to install OpenMPI <code>--with-devel-headers</code> but this is no longer necessary.  In fact pre-built binaries available from many sources (and shipped with many systems) should also work. (Your mileage may vary. Please let us know.)
 
  
If using OpenMPI 1.3, you need 1.3.3.
+
===Installing OpenMPI===
 +
If you do want to build OpenMPI yourself, here are instructions for building OpenMPI 1.3.4. (Now 1.4 is available, which is probably preferable)
  
So a basic install for (e.g.) OpenMPI should consist of
+
# Download the openmpi-1.3.4.tar.gz file
* download the openmpi-1.3.3.tar.gz file
+
# Untar it using the command <code> tar -xzvf openmpi-1.3.4.tar.gz</code>  and cd to the directory it creates
* untar ittar -xzvf openmpi-1.3.3.tar.gz   and cd to the directory it creates
+
# Run <code>./configure</code>
* ./configure
+
#* The default installation location is /usr/local
** Suggestion: the above configures it to be installed it into /usr/local.    To install it e.g. to /usr/local/openmpi1.3.3, making uninstall simpler (isolated), do this:
+
#* To install into a different location, e.g. /usr/local/openmpi1.3.4, use the command:
*** ./configure --prefix=/usr/local/openmpi-1.3.3
+
#** <code>./configure --prefix=/usr/local/openmpi-1.3.4</code>
***  Then don't forget to modify PATH, etc:
+
#**  Then don't forget to modify PATH, etc:
****export PATH=/usr/local/openmpi-1.3.3/bin:/usr/local/bin:$PATH
+
#*** <code>export PATH=/usr/local/openmpi-1.3.4/bin:/usr/local/bin:$PATH</code>
****export LD_LIBRARY_PATH=/usr/local/openmpi-1.3.3/lib:/usr/local/lib
+
#*** <code>export LD_LIBRARY_PATH=/usr/local/openmpi-1.3.4/lib:/usr/local/lib</code>
* sudo make install
+
#* If you have problems with Fortran bindings (e.g. Snow Leopard), you can disable this by adding <code>--disable-mpi-f77</code> to the configure script
 +
# Build and install with <code>sudo make install</code>
 
Then to check your install:
 
Then to check your install:
* ompi_info     should return version info including version of 1.3.3
+
# <code>ompi_info</code>  should return version info including version of 1.3.4
 
Build and run a small MPI test case, for example:  [http://www.eclipse.org/ptp/documentation/2.1/org.eclipse.ptp.pldt.help/html/samples/testMPI.c testMPI.c]
 
Build and run a small MPI test case, for example:  [http://www.eclipse.org/ptp/documentation/2.1/org.eclipse.ptp.pldt.help/html/samples/testMPI.c testMPI.c]
* mpicc -o testMPI testMPI.c
+
# <code>mpicc -o testMPI testMPI.c</code>
* mpirun -np 4 testMPI
+
# <code>mpirun -np 4 testMPI</code>
  
  
==== Installing PTP Server Components ====
+
==== Installing PTP Server Components ====
  
PTP comes with optional components that support different resource managers (MPICH2, LoadLeveler and Parallel Environment), as well as a parallel debugger (called the SDM: Scalable Debug Manager). These components must be installed on the target machine before PTP can be used.
+
PTP comes with optional components that support different resource managers (IBM's LoadLeveler and Parallel Environment, SLURM and PBS), as well as a parallel debugger called the Scalable Debug Manager (SDM). These components must be installed on the target machine before PTP can be used.  
  
If the target machine and the local machine are the same, skip to Step 2 below.  
+
'''''If the target machine and the local machine are the same, skip to step 2 below.''''' ''In the following steps, <code>YYYYMMDDHHMM</code> corresponds to the numeric build date of the PTP release, for example, <code>200908181129</code>,'' and 3.0.0 should be replaced with the current release number, e.g. 3.0.1
  
''Step 1'': First, you need to copy some files from your Eclipse installation to the target system. In the following steps, <code>YYYYMMDDHHMM</code> corresponds to the numeric build date of the PTP release. For example, <code>200908181129</code>.  And
+
#Copy the server components to the target machine
 
+
##Locate the <code>plugins</code> directory contained in the Eclipse installation directory <code>eclipse</code>.  
# Locate the <code>plugins</code> directory contained in the Eclipse installation directory <code>eclipse</code>.
+
##Copy the following directories and their contents to a known location on the target machine. The only requirement is that they are all in the same location.  
# Copy the following directories and their contents to a known location on the target machine. The only requirement is that they are all in the same location. YYYYMM
+
##*<code>org.eclipse.ptp.utils_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.utils_3.0.0.YYYYMMDDHHMM</code>
+
##*<code>org.eclipse.ptp.proxy_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.proxy_3.0.0.YYYYMMDDHHMM</code>
+
##*<code>org.eclipse.ptp.debug.sdm_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.debug.sdm_3.0.0.YYYYMMDDHHMM</code>
+
##If you wish to use PTP with IBM LoadLeveler, copy the following directory and its contents:  
# If you wish to use PTP with IBM LoadLeveler, copy the following directory and its contents:
+
##*<code>org.eclipse.ptp.rm.ibm.ll.proxy_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.rm.ibm.ll.proxy_3.0.0.YYYYMMDDHHMM</code>
+
##If you wish to use PTP with IBM Parallel Environment, copy the following directory and its contents:  
# If you wish to use PTP with IBM Parallel Environment, copy the following directory and its contents:
+
##*<code>org.eclipse.ptp.rm.ibm.pe.proxy_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.rm.ibm.pe.proxy_3.0.0.YYYYMMDDHHMM</code>
+
##If you wish to use PTP with SLURM, copy the following directory and its contents:  
# If you wish to use PTP with MPICH2, copy the following directory and its contents:
+
##*<code>org.eclipse.ptp.rm.slurm.proxy_3.0.0.YYYYMMDDHHMM</code>  
#* <code>org.eclipse.ptp.rm.mpich2.proxy_3.0.0.YYYYMMDDHHMM</code>
+
##If you wish to use PTP with PBS, copy the following directory and its contents:
# Finally, copy the following directory and contents, replacing <code><os></code> and <code><arch></code> with the target system's operating system and architecture respectively:
+
##*<code>org.eclipse.ptp.rm.pbs.proxy_3.0.0.YYYYMMDDHHMM</code>
#* <code>org.eclipse.ptp.<os>.<arch>_3.0.0.YYYYMMDDHHMM</code>
+
##Finally, copy the following directory and contents, replacing <code>&lt;os&gt;</code> and <code>&lt;arch&gt;</code> with the target system's operating system and architecture respectively:  
 
+
##*<code>org.eclipse.ptp.&lt;os&gt;.&lt;arch&gt;_3.0.0.YYYYMMDDHHMM</code>  
''Step 2'': To complete the installation on the target system, change to the <code>org.eclipse.ptp.<os>.<arch>_3.0.0.YYYYMMDDHHMM</code> directory and run the command:
+
#To complete the installation on the target system, change to the <code>org.eclipse.ptp.&lt;os&gt;.&lt;arch&gt;_3.0.0.YYYYMMDDHHMM</code> directory and run the command:
  
 
       sh BUILD
 
       sh BUILD
  
This should build and install the executables. Check the <code>bin</code> directory to see if there are executables in it (e.g. <code>ptp_ibmpe_proxy</code> or <code>sdm</code>). If you see any errors here, please refer to the Trouble Shooting section below.
+
This should build and install the executables. Check the <code>bin</code> directory to see if there are executables in it (e.g. <code>ptp_ibmpe_proxy</code> or <code>sdm</code>). If you see any errors here, please refer to the Trouble Shooting section below.  
  
 
The server executables can reside in any convenient directory. When you create a resource manager, you will need to navigate to the this directory (the <code>bin</code> directory by default) and select the appropriate resource manager proxy agent (if it requires one). When you configure a debug launch configuration, you will need to select the <code>sdm</code> executable in this directory.
 
The server executables can reside in any convenient directory. When you create a resource manager, you will need to navigate to the this directory (the <code>bin</code> directory by default) and select the appropriate resource manager proxy agent (if it requires one). When you configure a debug launch configuration, you will need to select the <code>sdm</code> executable in this directory.
Line 235: Line 209:
 
If you didn't install RDT when you installed PTP, you can do this any time from Eclipse as follows:  
 
If you didn't install RDT when you installed PTP, you can do this any time from Eclipse as follows:  
  
# Open Help > Install New Software...
+
# Open "Help > Install New Software..."
# Expand the ptp-master-xxx.zip site you added previously
+
# If you added the PTP update site previously, select it from the "Work with:" dropdown
#* If you haven't added the update site yet, click the "Add Site..." button and navigate to the ptp-master-xxx.zip file you downloaded from http://wiki.eclipse.org/PTP/builds/3.0.0  earlier.
+
#* If you haven't added the update site yet, click the "Add..." button and enter http://download.eclipse.org/tools/ptp/releases/galileo.
 
# Select "Remote Development Tools" from the update site.
 
# Select "Remote Development Tools" from the update site.
# Click the "Install..." button and follow the instructions.
+
# Finish the installation by following the prompts.
# When asked, click "Yes" to restart the Eclipse workbench.
+
#* When asked, click "Yes" to restart the Eclipse workbench.
  
 
==== Installing RDT Server Components ====
 
==== Installing RDT Server Components ====
Line 258: Line 232:
  
 
See [[#Server_Installation_on_Windows|Server Installation on Windows]] for installing on Windows systems.
 
See [[#Server_Installation_on_Windows|Server Installation on Windows]] for installing on Windows systems.
 +
  
 
===== Server Installation on Unix, Linux and MacOS X =====
 
===== Server Installation on Unix, Linux and MacOS X =====
Line 272: Line 247:
 
# Ensure that a Java Runtime Environment (JRE) version 1.5 or higher is installed. An IBM, Sun or equivalent JRE is required; The gcj-based Java shipped with most Linux distributions does not work. If in doubt, run the command <code>java -version </code>and check if there is a reference to gcj.
 
# Ensure that a Java Runtime Environment (JRE) version 1.5 or higher is installed. An IBM, Sun or equivalent JRE is required; The gcj-based Java shipped with most Linux distributions does not work. If in doubt, run the command <code>java -version </code>and check if there is a reference to gcj.
 
# Choose a directory where you want to install the server code. These instructions will use the <code>/home/user/</code> directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
 
# Choose a directory where you want to install the server code. These instructions will use the <code>/home/user/</code> directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
# Go to the [http://www.eclipse.org/ptp/downloads.php PTP downloads page] and download the RDT server package that suits your operating system to this directory.
+
# Go to the [http://wiki.eclipse.org/PTP/builds/3.0.0 PTP 3.0 Builds page] and download the RDT server package that suits your operating system to this directory.
 
# Switch to the <code>/home/user/</code> directory.
 
# Switch to the <code>/home/user/</code> directory.
 
# Run the following command in the <code>/home/user</code> directory to extract the server code from the package appropriate to your operating system. For example, for Linux this command is:
 
# Run the following command in the <code>/home/user</code> directory to extract the server code from the package appropriate to your operating system. For example, for Linux this command is:
Line 326: Line 301:
  
 
#Choose a directory where you want to install the server code. These instructions will use the <code>C:/</code> directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
 
#Choose a directory where you want to install the server code. These instructions will use the <code>C:/</code> directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
#Go to the [http://www.eclipse.org/ptp/downloads.php PTP downloads page] and download the RDT Windows server package.
+
#Go to the [http://wiki.eclipse.org/PTP/builds/3.0.0 PTP 3.0 Builds page] and download the RDT Windows server package.
 
#Copy the file <code>rdt-server-windows-1.0.zip to the <code>C:\</code> directory (this could be on a different machine).
 
#Copy the file <code>rdt-server-windows-1.0.zip to the <code>C:\</code> directory (this could be on a different machine).
 
#Use an unzip utility to extract the server code.
 
#Use an unzip utility to extract the server code.
Line 357: Line 332:
  
 
When you connect RDT to the server, the server will terminate as soon as you disconnect the client. The daemon, however, will not terminate.
 
When you connect RDT to the server, the server will terminate as soon as you disconnect the client. The daemon, however, will not terminate.
 +
 +
===Building PE and LoadLeveler Proxies ===
 +
If you are installing the PE and/or LoadLeveler proxies on a remote AIX or Linux system, then you should use these steps to transfer the source code to the remote system and build the proxies on the remote system.
 +
* Install PTP and prereqs (RSE, CDT) on your local system using Eclipse install procedures
 +
** Eclipse 3.5, CDT 6.0.2, RSE 3.1.1 for PTP 3.0
 +
* 'cd' to the plugins subdirectory in your Eclipse installation directory on your local system.
 +
* Create archive from plugins directory using latest date version of the following directories
 +
** org.eclipse.ptp.proxy.* (required)
 +
** org.eclipse.ptp.utils.* (required)
 +
** org.eclipse.ptp.rm.ibm.pe.proxy.* (for PE)
 +
** org.eclipse.ptp.rm.ibm.ll.proxy.* (for LoadLeveler)
 +
** org.eclipse.ptp.aix.ppc.* (AIX)
 +
** org.eclipse.ptp.linux.ppc.* (Linux)
 +
* Upload archive to remote machine and unpack archive
 +
* Make sure LoadLeveler is installed if needed
 +
* cd to org.eclipse.ptp.{aix,linux}.ppc.*
 +
** Use directory matching OS
 +
* Invoke BUILD
 +
* Verify that proxies are built correctly
 +
* PE and LoadLeveler proxies can be built by hand
 +
* Build org.eclipse.ptp.utils and org.eclipse.ptp.proxy first
 +
** Build by invoking ./configure;make in each directory
 +
** ./configure –help for more options, including alternate LoadLeveler installation directory
 +
*Proxies can be installed in common directory (/usr/local)
  
 
== Feature Descriptions ==
 
== Feature Descriptions ==
Line 376: Line 375:
 
| Y (for remote services)
 
| Y (for remote services)
 
| Adds a remote services abstraction that can be used to connect to remote systems using either Remote Tools or RSE. Can be installed as a stand-alone component.
 
| Adds a remote services abstraction that can be used to connect to remote systems using either Remote Tools or RSE. Can be installed as a stand-alone component.
|-
 
| PTP Cell/B.E. IDE
 
| N
 
| Adds support for the Cell Broadband Engine
 
 
|-
 
|-
 
| PTP Common External Components
 
| PTP Common External Components
Line 431: Line 426:
 
| PTP Support For MPICH2
 
| PTP Support For MPICH2
 
| N
 
| N
| Adds resource manager support for MPICH2
+
| Adds resource manager support for MPICH2 (Linux or Mac OS X only)
 
|-
 
|-
 
| PTP Support For Open MPI
 
| PTP Support For Open MPI
Line 462: Line 457:
  
 
The PTP help is also available [http://eclipse.org/ptp/doc.php online].
 
The PTP help is also available [http://eclipse.org/ptp/doc.php online].
 +
 +
 +
==Troubleshooting==
 +
 +
<ol>
 +
<li> I created a resource manager using the "Remote Tools" remote services but I entered the wrong username/password. How do I change these?</li>
 +
''Solution'': Open the "Remote Environments" view by selecting "Window > Show View > Other...", open the "Remote Tools" folder, and selecting "Remote Environments". In the view, open "PTP Remote Host" and double click on the name of the connection you used in the resource manager configuration.
 +
<li>The parallel debugger does not start (may be stuck in "Waiting for connection...".)</li>
 +
''Solution'': There are many reasons that this could be happing:
 +
<ul>
 +
<li>Check that you can run the MPI program successfully (non-debug), both from the command line, and from within Eclipse</li>
 +
<li>Check that you have compiled the application for debuggering with -g</li>
 +
<li>If you are tunneling over ssh using "Remote Tools", check that the debugger session address is set to "localhost"</li>
 +
<li>If you are not tunneling, or are using "RSE", check that the debugger session address is set to the hostname of the machine running Eclipse. Try disabling any firewall you have on your local machine.</li>
 +
<li>Check that you have installed the sdm on the remote machine, and the path is correct on the "Debugger" tab in the launch configuration</li>
 +
<li>See [[#Debugger|Known Issues - Debugger]] below</li>
 +
</ul>
 +
 +
If still have a problem, ask on ptp-dev mailing list, and be sure to list your platform, version of Open MPI (or other system), and what the debugger session address is set to.
 +
<li>I've created an Open MPI resource manager, but it fails to start with the message "Unable to determine version of Open MPI. Please check discover command is correct."</li>
 +
''Solution'': If the resource manager is local, see troubleshooting local resource managers below. If the resource manager is remote, then it is probably an issue with your PATH or LD_LIBRARY_PATH (or both) on the remote machine. Try running the command <code>ssh remote_host ompi_info -a --parseable</code>. If the <code>ompi_info</code> command is not found, then you need to set your PATH correctly on the remote machine. If you see a message like "ompi_info: error while loading shared libraries: libmpi.so.0: cannot open shared object file: No such file or directory" then you also need to set the LD_LIBRARY_PATH on the remote machine.
 +
<li>Eclipse is unable to start a local resource manager.</li>
 +
''Solution'': This is usually because your PATH is not being picked up by Eclipse. Most window systems do not get their paths from the shell, so when you launch Eclipse it will have the wrong PATH set. Consult the documentation on your window system for details on how to set the path, or alternatively, launch Eclipse directly from a shell.
 +
<li>I want to use the CDT debugger, but I can't set breakpoints in the editor.</li>
 +
''Solution'': You have RDT installed, but RDT doesn't support breakpoints for CDT. Uninstall RDT. See [[#Debugger | Known Debugger Issues]] below.
 +
<li>Every time I run an application, all the projects in my workspace build.</li>
 +
''Solution'': Open the Eclipse preferences. Go to "Run/Debug" and click on the "Launching" preference. Uncheck "Build (if required) before launching".
 +
<li>I only see one node when I start an Open MPI resource manager, how do I simulate multiple nodes on a single machine?</li>
 +
''Solution'': Edit <code>/usr/local/etc/openmpi-default-hostfile</code> (or wherever you installed Open MPI)  and add lines containing <pre>
 +
node0
 +
node1
 +
...
 +
</pre>
 +
Edit <code>/etc/hosts</code> and add a localhost entry for each name you added to the <code>openmpi-default-hostfile</code>:
 +
<pre>
 +
127.0.0.1 node0
 +
127.0.0.1 node1
 +
...
 +
</pre>
 +
Edit <code>/usr/local/etc/openmpi-mca-params.conf</code> and add the following to the end:
 +
<pre>
 +
orte_default_hostfile = /usr/local/etc/openmpi-default-hostfile
 +
</pre>
 +
<li>How do I launch eclipse?</li>
 +
''Solution'': Normally just run the eclipse executable - however, you may want to try this from a command line instead of from a "shortcut" - some OS's or windowing systems do not properly send the environment information.  And, some OS's send the wrong info from the command line. Your mileage may vary.
 +
<li>Why are there XML tags in my parallel program output when I run my OpenMPI program in PTP?</li>
 +
''Solution'': XML tags should be gone in OpenMPI version 1.3.4 and later
 +
<li>I installed PTP and built the executables ("Server Components") by running 'sh BUILD' but  I see the message "configure: error: utils directory not found"</li>
 +
''Solution'': Building these components tries to build all resource managers.  If you don't have IBM PE or LoadLeveler installed, it can't build these.  You probably can see "Building org.eclipse.ptp.rm.ibm.pe.proxy"  and "Building org.eclipse.ptp.rm.ibm.ll.proxy"  a few lines ahead of the "configure: error" errors.  If so, it just can't install these, which is OK because you don't need them.
 +
</ol>
  
 
==Known Issues==
 
==Known Issues==
  
===Resource Manager===
+
===Resource Managers===
  
 
<ol>
 
<ol>
<li>'''After restarting Eclipse, a resource manager that uses "Remote Tools" is no longer able to connect.'''</li>
+
<li>'''Resource managers seem to get stuck at "Opening connection" when starting.'''</li>
  
''Reproduce By'': Create a new resource manager. Select "Remote Tools" as the remote service provider, and create a new location. Set the hostname, username and password. The resource manager should connect successfully. Exit from and then restart Eclipse. In some circumstances the subsequent connection will fail.
+
Connecting to a remote resource manager on some operating systems (in particular Fedora Core 11) generate a Kerberos authentication request. Check the command line where you started Eclipse for a Kerberos prompt. Enter your login name and password when requested.
  
''Workaround'': Remote Tools sometimes forgets the password you supplied. Open the "Remote Environments" view (go to "Window > Show View > Other..." and choose "Remote Environments" from the "Remote Tools" category). In this view, locate the "Target Environment" that was created when you configured the resource manager. Double-click on this and reset the password to the correct value.
+
Your operating system documentation may provide information on how to disable this request from being generated.
 +
 
 +
<li>'''A "Secure Storage" dialog is seen when starting Eclipse on Linux.'''</li>
 +
 
 +
Eclipse stores usernames/passwords in secure storage. On some systems, a password (usually your login password) must be entered to unlock this storage before Eclipse can access it. Check your operating system documentation for ways to disable this prompt.
  
 
<li>'''There are synchronization issues when two (or more) remote resource managers attempt to start simultaneously.'''</li>
 
<li>'''There are synchronization issues when two (or more) remote resource managers attempt to start simultaneously.'''</li>
Line 490: Line 539:
  
 
===Debugger===
 
===Debugger===
 +
<ol>
 +
<li>'''The debugger gets stuck at "Waiting for connection"'''</li>
  
<ol start="4">
+
The debugger requires a filesystem that is shared across all nodes in the cluster in order to distribute routing information. If this routing file doesn't exist, then one or more of the debugger server processes will appear to hang.  
<li>'''Accelerator keys (F5, F6) operate on the current process selected in Debug view.'''</li>
+
  
There is currently no way to use these keys for the Parallel Debug view.
+
''Workaround:'' In this situation, the routing file must be manually distributed in order for the server processes to proceed.
</ol>
+
  
===Launch configurations===
+
This limitation will be addressed in a future version of the debugger.
  
<ol start="5">
+
<li>'''Accelerator keys (F5, F6) operate on the current process selected in Debug view.'''</li>
<li>'''Certain sequences can result in a blank Resources page in the Resources tab.'''</li>
+
  
''Reproduce By'': Start a resource manager. Open launch configuration and choose resource manager from Main tab. Select Resources tab and fill in some resources. Close launch configuration and shutdown resource manager. Start a different resource manager. Open the same launch configuration and switch to Resources tab, then switch back to main tab. Set the launch config to new the new resource manager, then switch to resources.
+
There is currently no way to use these keys for the Parallel Debug view.
 +
<li>'''RDT editor does not support breakpoints (bug #296490)'''</li>
  
''Workaround'': None.
+
The RDT editor does not support setting CDT breakpoints, although breakpoints for the PTP debugger will work. If you need to use the CDT debugger you will need to uninstall RDT.
 
</ol>
 
</ol>
  
 
===Remote Development Tools (RDT) ===
 
===Remote Development Tools (RDT) ===
  
<ol start = 6>
+
<ol>
  
 
<li>'''The Remote C/C++ Editor is used by default for local files'''</li>
 
<li>'''The Remote C/C++ Editor is used by default for local files'''</li>
Line 550: Line 599:
  
 
=== Parallel Language Development Tools (PLDT) ===
 
=== Parallel Language Development Tools (PLDT) ===
<ol start=12>
+
<ol>
 
<li> '''Analysis of parallel applications located on a remote server doesn't seem to work'''</li>
 
<li> '''Analysis of parallel applications located on a remote server doesn't seem to work'''</li>
  
Line 558: Line 607:
  
 
</ol>
 
</ol>
 
==Troubleshooting==
 
 
<ol>
 
<li>I restarted Eclipse and now my existing resource manager is stuck in the "Starting" (blue) state. If I right click on it, all the options are grayed out (except for "Add Resource Manager...").</li>
 
''Solution'': The resource manager is trying to connect to the remote system (see below for possible causes of connection failure). You can stop the resource manager by opening the "Progress" view ("Window > Show View > Other...", then select the "Progress" view from the "General" category) and clicking on the "Cancel Operation" button (red square).
 
<li> I created a resource manager using the "Remote Tools" remote services. It connected successfully, but after restarting Eclipse, it no longer connects.</li>
 
''Solution'': See [[#Known_Issues|Known Issue #1]] above.
 
</ol>
 
 
See also the  older [http://wiki.eclipse.org/PTP/release_notes/2.0#Troubleshooting 2.0 Release notes troubleshooting section]
 
 
==FAQ==
 
# How do I simulate multiple nodes on a single machine with OpenMPI?
 
#* Edit <openmpi_install>/etc/openmpi-default-hostfile (default is /usr/local/etc/openmpi-default-hostfile)  and add lines containing 'node0', 'node1', etc.
 
#* Edit /etc/hosts and add a localhost entry for each name you added to the openmpi-default-hostfile. So, for 'node0', add '127.0.0.1 node0' to /etc/hosts.
 
#* Edit /usr/local/etc/openmpi-mca-params.conf and add "orte_default_hostfile = /usr/local/etc/openmpi-default-hostfile" to the end.
 
#* This will simulate a multi-node machine.
 
#* Note: if you took the advice above and installed openmpi into /usr/local/openmpi-1.3.3  above, modify the above locations accordingly
 
#How do I launch eclipse?
 
#*Normally just run the eclipse executable - however, you may want to do this from a command line instead of from a "shortcut" - some OS's or windowing systems do not properly send the environment information.
 

Latest revision as of 10:19, 15 July 2010

PTP Installation

This installation describes how to install PTP and its pre-requisites. This is intended for PTP users. If you are a PTP Developer and want to build PTP from the plug-ins yourself, see PTP 3.0 Development Environment Setup

The installation process for PTP depends on a number of factors, including the versions of software you have installed on your system, your operating system, and the types of target systems you want to use. The basic installation steps are:

  1. Install Java
  2. Install Eclipse
  3. Install CDT (C/C++ Development Tools) and other pre-reqs e.g. RSE
  4. Install PTP (including RDT)

To complete the installation, you will probably also need to build and install a small set of platform-specific runtime components.

These steps are detailed below:

Install Java

Ensure that a Java Runtime Environment (JRE) version 1.5 or higher is installed. This can be done with the command:

   java -version

In addition an IBM, Sun, or equivalent JRE is required; The gcj-based Java shipped with most Linux distributions does not work with Eclipse. If in doubt, run the above command and check if there is a reference to gcj. If you are using the Linux operating system, download and install either the Sun Java Runtime Environment or the IBM Java Runtime Environment.

Download and install Eclipse

Download Eclipse 3.5 (Galileo)

We recommend either:

  • "Eclipse Classic" - if you also plan to do Java and/or plugin development, or
  • "Eclipse IDE for C/C++ Developers" - only includes support for C/C++, which is simpler and smaller

Unpack and launch Eclipse

After downloading and extracting Eclipse (zip or tar file), there's nothing else to the installation process from the Eclipse side. In the extracted folder, simply run the eclipse executable file. It will ask for a workspace location; the default is fine.

Install PTP and its Pre-requisite features

Launch Eclipse, then follow the instructions below.

Note: The "Install New Software" Dialog in Eclipse 3.5 (Galileo) can be confusing when installing from multiple update sites at the same time, which is why we recommend installing each component separately. If you wish to install them all at the same time, add each site if it is not already listed, then use the "Work with:" dropdown box to choose "-- All Available Sites--". You can then check items from the multiple update sites. If you do this, make sure items you check while perusing one update site still stay checked after looking thru another one.

For offline installation of pre-reqs, download the following archived update sites:

  1. RSE 3.1.1 update site archive
  2. CDT 6.0.2
    • Save the cdt-master-xxx.zip file to a known location

Installation steps:

  1. Install Remote System Explorer (RSE) 3.1.1 from the Galileo update site (or the archive downloaded above)
    • Open "Help > Install New Software..."
    • In the "Work With" drop-down box, select the Galileo Site.
    • Open "General Purpose Tools"
    • Check "Remote System Explorer End-User Runtime"
    • Finish the install by following the prompts
      • You don't need to restart Eclipse
  2. Install the C/C++ Development Tools (CDT) 6.0.2
    • You can install it from a downloaded archive or from the Galileo update site.
      • The Galileo update site (already in your list of update sites on most platforms) contains only the Main Features of CDT
      • The full CDT 6.0.2 archive (download instructions above) contains the optional features as well
    • Open "Help > Install New Software..."
    • Click "Add..." to add an update site
    • Now do either of the following:
      • Install from Galileo update site - Select the Galileo update site to install the Main Features of CDT
        • In the "Work With" drop-down box, select the Galileo Site.
        • Open "Programming Languages"
        • Check "Eclipse C/C++ Development Tools"
        • Finish the install by following the prompts
          • You don't need to restart Eclipse yet.
      • Install from downloaded archive - In the resulting dialog, click "Archive..." and navigate to the location of the cdt-master-xxx.zip file you downloaded. This will fill in the "Location" field. The "Name" field is optional.
        • Check each of the features you want, or check the main categories to install everything.
          • Note that if you are installing all of the Parallel Language Development Tools (PLDT), you'll need UPC, so be sure to check "Unified Parallel C Support" (under "CDT Optional Features")
          • Suggestion: under "CDT Optional Features" select everything, but uncheck "Eclipse CDT Testing Feature" (can be confusing/annoying for users)
        • Finish the install by following the prompts
        • You don't need to restart Eclipse yet.
  3. Install PTP 3.0
    • Open "Help > Install New Software..."
    • Click "Add..." to add an update site
    • Enter the location of the PTP update site: http://download.eclipse.org/tools/ptp/releases/galileo
      • The "Name" field can contain anything you want
    • Check "Fortran Development Tools (Photran)" if you want to add Fortran support. See the Photran 5.0 User's Guide for more information on installing and using Photran
    • Check "Parallel Tools Platform" to add PTP
    • Finish the install by following the prompts
      • You should restart Eclipse when prompted.

Prerequisites

Component OS (Eclipse) OS (Server) Java Eclipse CDT RSE MPI Other
PTP
Linux
Mac OS X
Windows
Linux
Mac OS X
Unix (e.g. AIX)
1.5 or later 3.5 6.0.1 3.1
Open MPI 1.2.x or 1.3.x
MPICH 2 1.0.x
IBM Parallel Environment
gdb 6.3 - 6.8
RDT
Linux
Mac OS X
Windows
Linux
Mac OS X
Unix (e.g. AIX)
Windows
1.5 or later 3.5 6.0.2 3.1 N/A N/A

Installing OpenMPI

If you do want to build OpenMPI yourself, here are instructions for building OpenMPI 1.3.4. (Now 1.4 is available, which is probably preferable)

  1. Download the openmpi-1.3.4.tar.gz file
  2. Untar it using the command tar -xzvf openmpi-1.3.4.tar.gz and cd to the directory it creates
  3. Run ./configure
    • The default installation location is /usr/local
    • To install into a different location, e.g. /usr/local/openmpi1.3.4, use the command:
      • ./configure --prefix=/usr/local/openmpi-1.3.4
      • Then don't forget to modify PATH, etc:
        • export PATH=/usr/local/openmpi-1.3.4/bin:/usr/local/bin:$PATH
        • export LD_LIBRARY_PATH=/usr/local/openmpi-1.3.4/lib:/usr/local/lib
    • If you have problems with Fortran bindings (e.g. Snow Leopard), you can disable this by adding --disable-mpi-f77 to the configure script
  4. Build and install with sudo make install

Then to check your install:

  1. ompi_info should return version info including version of 1.3.4

Build and run a small MPI test case, for example: testMPI.c

  1. mpicc -o testMPI testMPI.c
  2. mpirun -np 4 testMPI


Installing PTP Server Components

PTP comes with optional components that support different resource managers (IBM's LoadLeveler and Parallel Environment, SLURM and PBS), as well as a parallel debugger called the Scalable Debug Manager (SDM). These components must be installed on the target machine before PTP can be used.

If the target machine and the local machine are the same, skip to step 2 below. In the following steps, YYYYMMDDHHMM corresponds to the numeric build date of the PTP release, for example, 200908181129, and 3.0.0 should be replaced with the current release number, e.g. 3.0.1

  1. Copy the server components to the target machine
    1. Locate the plugins directory contained in the Eclipse installation directory eclipse.
    2. Copy the following directories and their contents to a known location on the target machine. The only requirement is that they are all in the same location.
      • org.eclipse.ptp.utils_3.0.0.YYYYMMDDHHMM
      • org.eclipse.ptp.proxy_3.0.0.YYYYMMDDHHMM
      • org.eclipse.ptp.debug.sdm_3.0.0.YYYYMMDDHHMM
    3. If you wish to use PTP with IBM LoadLeveler, copy the following directory and its contents:
      • org.eclipse.ptp.rm.ibm.ll.proxy_3.0.0.YYYYMMDDHHMM
    4. If you wish to use PTP with IBM Parallel Environment, copy the following directory and its contents:
      • org.eclipse.ptp.rm.ibm.pe.proxy_3.0.0.YYYYMMDDHHMM
    5. If you wish to use PTP with SLURM, copy the following directory and its contents:
      • org.eclipse.ptp.rm.slurm.proxy_3.0.0.YYYYMMDDHHMM
    6. If you wish to use PTP with PBS, copy the following directory and its contents:
      • org.eclipse.ptp.rm.pbs.proxy_3.0.0.YYYYMMDDHHMM
    7. Finally, copy the following directory and contents, replacing <os> and <arch> with the target system's operating system and architecture respectively:
      • org.eclipse.ptp.<os>.<arch>_3.0.0.YYYYMMDDHHMM
  2. To complete the installation on the target system, change to the org.eclipse.ptp.<os>.<arch>_3.0.0.YYYYMMDDHHMM directory and run the command:
     sh BUILD

This should build and install the executables. Check the bin directory to see if there are executables in it (e.g. ptp_ibmpe_proxy or sdm). If you see any errors here, please refer to the Trouble Shooting section below.

The server executables can reside in any convenient directory. When you create a resource manager, you will need to navigate to the this directory (the bin directory by default) and select the appropriate resource manager proxy agent (if it requires one). When you configure a debug launch configuration, you will need to select the sdm executable in this directory.

Install Remote Development Tools (RDT)

Installation of RDT is in two parts. The first part comprises installing RDT into your Eclipse distribution on the local machine. The second part comprises installing components on the target machine you wish to use with RDT to host your remote projects.

Installing RDT

If you didn't install RDT when you installed PTP, you can do this any time from Eclipse as follows:

  1. Open "Help > Install New Software..."
  2. If you added the PTP update site previously, select it from the "Work with:" dropdown
  3. Select "Remote Development Tools" from the update site.
  4. Finish the installation by following the prompts.
    • When asked, click "Yes" to restart the Eclipse workbench.

Installing RDT Server Components

RDT provides advanced parsing and indexing functionality for C/C++ projects in a remote client-server scenario. The RDT server component, which contains the parser and index database, must be located on the same remote machine as the project files.

The RDT server component provides the following functionality:

  • Editing of remote files.
  • Creation of an index database from C/C++ source code files located on the remote machine.
  • Advanced search and code assist functionality based on the contents of the remote index database.
  • Remote C/C++ projects require a connection to be established with a remote RDT server. This guide describes how to install and run the RDT server.

Note: The RDT server component is based on the RSE dstore server. Therefore setting up the RDT server is very similar to setting up the RSE dstore server. The guide to setting up the RSE dstore server can be found here, however this section contains documentation specific to the RDT server.

See Server Installation on Unix, Linux and MacOS X for installing on Unix, Linux or MacOS X systems.

See Server Installation on Windows for installing on Windows systems.


Server Installation on Unix, Linux and MacOS X

The following documentation explains how to install the Linux or UNIX server code, start the server daemon, and make a connection to a remote Linux or UNIX server.

Prerequisites

To use the Remote System Explorer communications server daemon you need to install Perl. Using the daemon helps eliminate some of the manual steps when you connect to the server.

Installing the server code

  1. Ensure that Perl is installed.
  2. Ensure that a Java Runtime Environment (JRE) version 1.5 or higher is installed. An IBM, Sun or equivalent JRE is required; The gcj-based Java shipped with most Linux distributions does not work. If in doubt, run the command java -version and check if there is a reference to gcj.
  3. Choose a directory where you want to install the server code. These instructions will use the /home/user/ directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
  4. Go to the PTP 3.0 Builds page and download the RDT server package that suits your operating system to this directory.
  5. Switch to the /home/user/ directory.
  6. Run the following command in the /home/user directory to extract the server code from the package appropriate to your operating system. For example, for Linux this command is:
    tar -xvf rdt-server-linux-1.0.tar
  1. A directory named /home/user/rdt-server will be created that contains the server files.

Starting the server

You can start the RSE communications server with the server daemon, or manually. Before starting the server, make sure the Java command is in your path, you can do this by running the following command:

   java -version

You should see something similar to the following:

   java version "1.5.0_16"
   Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
   Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)
   

If you receive a "command not found" error, then try creating a symbolic link to the java command in /usr/bin by running the following command:

   ln -s  /opt/IBMJava2-141/jre/bin/java /usr/bin/java

To start the server with the server daemon

Ensure that you are running using the root user ID. (If the daemon is not run under root, it will be unable to authenticate connecting users.) Run the following commands:

   su -l root
   cd /home/user/rdt-server
   perl ./daemon.pl [daemonPort] [serverPortRange]

Note that the server daemon runs on port 4075 by default. You can pass the optional daemonPort argument to force a different port if you want. If your daemon runs behind a firewall, you may want to specify the optional serverPortRange argument to restrict selected server ports to the range given:

   perl ./daemon.pl 4075 10000-10010

To start the server manually

Note: In the following discussion we assume that the RSE server has been installed on Linux. If you are running on a UNIX system the script name is server.sh" rather than server.pl.

If you do not have root access on a remote machine, you can start the server manually for your particular user id only. Run the following commands:

   cd /home/user/rdt-server
   perl ./server.pl [port]

These commands run the server.pl script located in the /opt/rseserver directory. The port parameter to the server.pl script is optional. If you do not specify a port, then the server will pick the first one available and print the port number to standard out. By default, it is usually 4033. If you would like to use a different port, you will then have to enter this port number in port property for the Files subsystem for your connection in the Remote System Explorer (see Connecting to the Remote Server, below). Otherwise, you do not need to change this property.

Note: When you connect RSE to the server, the server will terminate as soon as you disconnect the client. The daemon, however, will not terminate.

Server Installation on Windows

The following documentation explains how to install the Windows server code, start the server daemon, and make a connection to a remote Windows server.

Installing the server code

  1. Choose a directory where you want to install the server code. These instructions will use the C:/ directory as an example, but you are free to use any directory. When the server archive file is expanded it will create a directory named rdt-server in the location where it is expanded.
  2. Go to the PTP 3.0 Builds page and download the RDT Windows server package.
  3. Copy the file rdt-server-windows-1.0.zip to the <code>C:\ directory (this could be on a different machine).
  4. Use an unzip utility to extract the server code.
  5. A directory named C:\rdt-server will be created that contains the server files.

Starting the server

You can start the RDT communications server manually, or as a daemon.

To start the server as a daemon

Note that the server daemon does not enforce any user authentication. If you run the server daemon, any user can connect to the machine, work with the file system and run commands. Use of the server daemon on Windows systems is not recommended.

Simply double click the daemon.bat program to start a server daemon. You can edit the daemon.bat file to change properties for the daemon, like a specific daemon port to use or to force a port range for the server (in order to comply with firewalls).

The server daemon runs on port 4075 by default. You can pass the optional daemonPort argument to force a different port if you want. If your daemon runs behind a firewall, you may want to specify the optional serverPortRange argument to restrict selected server ports to the range given:

   daemon.bat 4075 10000-10010

To start the server manually

Simply double click on the server.bat program to start the RDT server. The server will pick the first port available and print the port number. By default, it is usually 4033. You will then have to enter this port number in port property for the Files subsystem for your connection in the Remote System Explorer.

For security reasons, the server will only wait a limited time until a client connects (12000 seconds by default). In order to start the server with an exactly specified port or timeout, open a Windows command prompt and enter:

   c:
   cd \rdt-server
   server.bat [port] [timeout]

When you connect RDT to the server, the server will terminate as soon as you disconnect the client. The daemon, however, will not terminate.

Building PE and LoadLeveler Proxies

If you are installing the PE and/or LoadLeveler proxies on a remote AIX or Linux system, then you should use these steps to transfer the source code to the remote system and build the proxies on the remote system.

  • Install PTP and prereqs (RSE, CDT) on your local system using Eclipse install procedures
    • Eclipse 3.5, CDT 6.0.2, RSE 3.1.1 for PTP 3.0
  • 'cd' to the plugins subdirectory in your Eclipse installation directory on your local system.
  • Create archive from plugins directory using latest date version of the following directories
    • org.eclipse.ptp.proxy.* (required)
    • org.eclipse.ptp.utils.* (required)
    • org.eclipse.ptp.rm.ibm.pe.proxy.* (for PE)
    • org.eclipse.ptp.rm.ibm.ll.proxy.* (for LoadLeveler)
    • org.eclipse.ptp.aix.ppc.* (AIX)
    • org.eclipse.ptp.linux.ppc.* (Linux)
  • Upload archive to remote machine and unpack archive
  • Make sure LoadLeveler is installed if needed
  • cd to org.eclipse.ptp.{aix,linux}.ppc.*
    • Use directory matching OS
  • Invoke BUILD
  • Verify that proxies are built correctly
  • PE and LoadLeveler proxies can be built by hand
  • Build org.eclipse.ptp.utils and org.eclipse.ptp.proxy first
    • Build by invoking ./configure;make in each directory
    • ./configure –help for more options, including alternate LoadLeveler installation directory
  • Proxies can be installed in common directory (/usr/local)

Feature Descriptions

Feature Required Description
Parallel Tools Platform Core Y Core components of PTP
Parallel Tools Platform End-User Runtime Y Main PTP feature
PTP Remote Services Y (for remote services) Adds a remote services abstraction that can be used to connect to remote systems using either Remote Tools or RSE. Can be installed as a stand-alone component.
PTP Common External Components Y (for proxy agents and debugger) Components that must be installed on a target system to support certain resource managers and the debugger
PTP Common Utilities Y Common utility functions. Can be installed as a stand-alone component.
PTP Parallel Language Development Tools N (recommended) Adds MPI, OpenMP, LAPI, and UPC analysis and assistance tools
PTP Parallel Language Development Tools LAPI Support N Adds LAPI assistance tools
PTP External Tools Framework N Adds support for the integration of external tools (formerly Performance Tools Framework)
PTP External Tools Framework TAU Support N Adds support for the integration of the Tuning and Analysis Utilities (TAU)
PTP Remote Tools N (recommended) Light weight ssh-based remote services. Can be installed as a stand-alone component.
PTP Remote Tools Enabler N (recommended) Adds support to allow PTP to use the remote services provided by Remote Tools
PTP RSE Enabler N (recommended) Adds support to allow PTP to use the remote services provided by RSE
PTP Scalable Debug Manager N (recommended) External component to allow debugging of parallel applications. Can be installed as a stand-alone component.
PTP Support For IBM LoadLeveler N Adds resource manager support for IBM LoadLeveler
PTP Support For IBM Parallel Environment N Adds resource manager support for IBM Parallel Environment
PTP Support For MPICH2 N Adds resource manager support for MPICH2 (Linux or Mac OS X only)
PTP Support For Open MPI N (recommended) Adds resource manager support for Open MPI
PTP Remote Development Tools (RDT) N (recommended) Adds capability to work with C/C++ projects on a remote machine

Test your installation

The easiest way to test your installation is to create and run an MPI application.

  1. Start Eclipse. (You may need to use the -clean parameter to force it to recognize new features and plug-ins).
  2. Switch to the C/C++ perspective (Window > Open Perspective > Other...)
  3. Create a small MPI C project.
  4. Open the PTP Runtime perspective (Window>Open Perspective>Other...).
  5. Create a new resource manager (e.g. Open MPI) and start it. You should see a machine and one or more nodes appear in the 'Machines View'.
  6. Create a launch configuration (Run > Run Configurations...) and create a launch configuration for a Parallel Application.
    • Fill in the information for the particular type of resource manager.
    • For example, for an Open MPI application this includes (but may not be limited to):
      • On Resources tab, select Number of processes
      • On Application tab, select your Project for Parallel Project, and the executable for Application Program.
      • On Debugger tab, find the sdm executable that you build from the command line during the installation process as the "Path to debugger executable"
  7. Launch the application.

More details on using PTP can be found in Help > Help Contents. Click on "Parallel Tools Platform User Guide".

The PTP help is also available online.


Troubleshooting

  1. I created a resource manager using the "Remote Tools" remote services but I entered the wrong username/password. How do I change these?
  2. Solution: Open the "Remote Environments" view by selecting "Window > Show View > Other...", open the "Remote Tools" folder, and selecting "Remote Environments". In the view, open "PTP Remote Host" and double click on the name of the connection you used in the resource manager configuration.

  3. The parallel debugger does not start (may be stuck in "Waiting for connection...".)
  4. Solution: There are many reasons that this could be happing:

    • Check that you can run the MPI program successfully (non-debug), both from the command line, and from within Eclipse
    • Check that you have compiled the application for debuggering with -g
    • If you are tunneling over ssh using "Remote Tools", check that the debugger session address is set to "localhost"
    • If you are not tunneling, or are using "RSE", check that the debugger session address is set to the hostname of the machine running Eclipse. Try disabling any firewall you have on your local machine.
    • Check that you have installed the sdm on the remote machine, and the path is correct on the "Debugger" tab in the launch configuration
    • See Known Issues - Debugger below

    If still have a problem, ask on ptp-dev mailing list, and be sure to list your platform, version of Open MPI (or other system), and what the debugger session address is set to.

  5. I've created an Open MPI resource manager, but it fails to start with the message "Unable to determine version of Open MPI. Please check discover command is correct."
  6. Solution: If the resource manager is local, see troubleshooting local resource managers below. If the resource manager is remote, then it is probably an issue with your PATH or LD_LIBRARY_PATH (or both) on the remote machine. Try running the command ssh remote_host ompi_info -a --parseable. If the ompi_info command is not found, then you need to set your PATH correctly on the remote machine. If you see a message like "ompi_info: error while loading shared libraries: libmpi.so.0: cannot open shared object file: No such file or directory" then you also need to set the LD_LIBRARY_PATH on the remote machine.

  7. Eclipse is unable to start a local resource manager.
  8. Solution: This is usually because your PATH is not being picked up by Eclipse. Most window systems do not get their paths from the shell, so when you launch Eclipse it will have the wrong PATH set. Consult the documentation on your window system for details on how to set the path, or alternatively, launch Eclipse directly from a shell.

  9. I want to use the CDT debugger, but I can't set breakpoints in the editor.
  10. Solution: You have RDT installed, but RDT doesn't support breakpoints for CDT. Uninstall RDT. See Known Debugger Issues below.

  11. Every time I run an application, all the projects in my workspace build.
  12. Solution: Open the Eclipse preferences. Go to "Run/Debug" and click on the "Launching" preference. Uncheck "Build (if required) before launching".

  13. I only see one node when I start an Open MPI resource manager, how do I simulate multiple nodes on a single machine?
  14. Solution: Edit /usr/local/etc/openmpi-default-hostfile (or wherever you installed Open MPI) and add lines containing
    node0
    node1
    ...
    

    Edit /etc/hosts and add a localhost entry for each name you added to the openmpi-default-hostfile:

    127.0.0.1 node0
    127.0.0.1 node1
    ...
    

    Edit /usr/local/etc/openmpi-mca-params.conf and add the following to the end:

    orte_default_hostfile = /usr/local/etc/openmpi-default-hostfile
    
  15. How do I launch eclipse?
  16. Solution: Normally just run the eclipse executable - however, you may want to try this from a command line instead of from a "shortcut" - some OS's or windowing systems do not properly send the environment information. And, some OS's send the wrong info from the command line. Your mileage may vary.

  17. Why are there XML tags in my parallel program output when I run my OpenMPI program in PTP?
  18. Solution: XML tags should be gone in OpenMPI version 1.3.4 and later

  19. I installed PTP and built the executables ("Server Components") by running 'sh BUILD' but I see the message "configure: error: utils directory not found"
  20. Solution: Building these components tries to build all resource managers. If you don't have IBM PE or LoadLeveler installed, it can't build these. You probably can see "Building org.eclipse.ptp.rm.ibm.pe.proxy" and "Building org.eclipse.ptp.rm.ibm.ll.proxy" a few lines ahead of the "configure: error" errors. If so, it just can't install these, which is OK because you don't need them.

Known Issues

Resource Managers

  1. Resource managers seem to get stuck at "Opening connection" when starting.
  2. Connecting to a remote resource manager on some operating systems (in particular Fedora Core 11) generate a Kerberos authentication request. Check the command line where you started Eclipse for a Kerberos prompt. Enter your login name and password when requested.

    Your operating system documentation may provide information on how to disable this request from being generated.

  3. A "Secure Storage" dialog is seen when starting Eclipse on Linux.
  4. Eclipse stores usernames/passwords in secure storage. On some systems, a password (usually your login password) must be entered to unlock this storage before Eclipse can access it. Check your operating system documentation for ways to disable this prompt.

  5. There are synchronization issues when two (or more) remote resource managers attempt to start simultaneously.
  6. This only happens when PTP is first launched, and attempts to reconnect to resource managers that were running when Eclipse was closed.

    Reproduce By: Start two remote resource managers that use remote tools connections. Exit from Eclipse. Restart Eclipse.

    Workaround: Shutdown resource managers before exiting Eclipse

  7. If two resource managers share the same remote connection, stopping one will also stop the other.
  8. Reproduce By: Create two resource managers that use the same remote connection. Start both resource managers. Stop one resource manager.

    Workaround: None. This is expected behavior since shutting down a resource manager also closes the connection.

Debugger

  1. The debugger gets stuck at "Waiting for connection"
  2. The debugger requires a filesystem that is shared across all nodes in the cluster in order to distribute routing information. If this routing file doesn't exist, then one or more of the debugger server processes will appear to hang.

    Workaround: In this situation, the routing file must be manually distributed in order for the server processes to proceed.

    This limitation will be addressed in a future version of the debugger.

  3. Accelerator keys (F5, F6) operate on the current process selected in Debug view.
  4. There is currently no way to use these keys for the Parallel Debug view.

  5. RDT editor does not support breakpoints (bug #296490)
  6. The RDT editor does not support setting CDT breakpoints, although breakpoints for the PTP debugger will work. If you need to use the CDT debugger you will need to uninstall RDT.

Remote Development Tools (RDT)

  1. The Remote C/C++ Editor is used by default for local files
  2. RDT currently provides a framework for developing C/C++ programs on remote machines. Although it is our intention that RDT work seamlessly with CDT and other Eclipse plug-ins, there is a problem with the Eclipse platform which hinders interoperabilty between base CDT and RDT, namely that the Remote C/C++ Editor provided by RDT is always used by default for editing C/C++ files.

    Workaround: Although this issue can be worked around by manually selecting the CDT editor (Context Menu->Open With->C/C++ Editor) when you are working with a local CDT project, it can be tedious having to do this for every single file you open. As such, we recommend that you install RDT into an Eclipse installation which you do not intend to do local C/C++ development with. Future versions of Eclipse and RDT should better support local development.

  3. Remote projects are always closed when Eclipse restarts
  4. When you exit and restart Eclipse, all your remote projects are closed. This happens because the .project file is on the remote server and when eclipse starts there is no connection yet, so eclipse thinks the .project file is missing and closes the project.

    Workaround: To work around this issue, simply reopen your projects after the connection to the remote machine has been re-established.

  5. Remote editors are not properly restored on Eclipse restart
  6. If you leave remote editors open upon closing down the workbench, when you restart, the editors will not be properly initialized, showing a "resource not found" error. Closing and reopening the editor will not alleviate the problem. This problem occurs because on startup of the workbench, the remote connection is not yet established, and hence opening the editors fails.

    Workaround: To work around this problem, close all editors opened on remote resources before shutting down the workbench. If the problem occurs, you can alleviate it by closing the affected editors and restarting the workbench.

  7. Cannot cancel builds when using the RSE provider
  8. There is an RSE bug which prevents RSE from forcibly terminating remote processes. As a result, if you use RSE to build, you won't be able to cancel a build while it's in progress.

    Workaround: Use the Remote Tools provider if possible. Otherwise there is no workaround.

  9. Quick Type Hierarchy does nothing
  10. Invoking Quick Type Hierarchy from the editor context menu does not currently do anything.

    Workaround: Use "Open Type Hierarchy" instead to open the Type Hierarchy View for an alternate method of viewing type hierarchy information.

  11. Creating a remote project that uses Remote Tools as the filesystem does not seem to work.
  12. There is a problem with that causes the ssh connection used by Remote Tools to become disconnected.

    Workaround: Use RSE for the filesystem. This will be fixed in the next release of PTP.

Parallel Language Development Tools (PLDT)

  1. Analysis of parallel applications located on a remote server doesn't seem to work
  2. Note that not all PLDT features are tested and verified for running with RDT at this time.

    Workaround: To use PLDT analysis features, use a local CDT project, instead of a remote project.

Back to the top