blob: e86b69b8056882cbdc8b40a6f89fa969bb3a060c [file] [log] [blame]
<html>
<head>
<title>Resource Managers</title>
<link rel="stylesheet" type="text/css" href="help.css">
<script type="text/javascript" src="thumb.js"> </script>
</head>
<body>
<h1 id="top">Configuring Resource Managers</h1>
<p>Topics include:
<ul>
<li><a href="#defn">Resource managers</a></li>
<li>Steps for defining a resource manager</li>
<ol>
<li><a href="#creat">Creating a resource manager</a></li>
<li>Configuring a resource manager</li>
<ol type="a">
<li><a href="#local">Local resource manager</a></li>
<li><a href="#remote">Remote resource manager</a></li>
</ol>
<li><a href="#spec">Resource manager-specific configuration</a> (OpenMPI example)</li>
<li><a href="#finish">Finishing resource manager configuration</a></li>
<li><a href="#start">Starting the resource manager</a></li>
</ol>
<li><a href="#edit">Editing a Resource Manager</a></li>
<li><a href="#rm">Removing a Resource Manager</a></li>
</ul>
<h2 id="defn">Resource Managers</h2>
<p>PTP uses the term <i>resource manager</i> to refer to any subsystem that controls the resources required for
launching a parallel job. If the target parallel system employs a job scheduler for controlling access to compute resources,
then the job scheduler would be considered the resource manager for the system. For a cluster with Open MPI installed, the
Open MPI runtime system would be considered the resource manager.</p>
<p>In order for PTP to launch, monitor, and control applications on a target system, it must know what type of resource manager
is being employed. PTP allows you to configure and manage resource managers that correspond to target systems. Each resource manager
controls one target system, although a particular target system may have more than one type of resource manager.</p>
<p>Resource managers can be <i>local</i> or <i>remote</i>. A local resource manager controls resources on the local machine running
Eclipse. A remote resource manager controls resources on a physically remote system. The process of configuring a local or remote
resource manager is the same.</p>
<h2 id="creat">Step 1: Creating a resource manager</h2>
<p></p>
<ol>
<li><p>Open the <b>PTP Runtime Perspective</b> using
<b>Window &gt; Open Perspective &gt; Other...</b> and then choose <b>Parallel Runtime</b> from the
list of perspectives.</p><p><br></p>
<p><img src="images/02RuntimePerspEmpty.png"></p><p><br></p>
</li>
<li><p>Right-click in <b>Resource Managers</b> view and select
<b>Add Resource Manager...</b></p><p><br></p>
<p><img src="images/02addResMgr.png"></p><p><br></p>
</li>
<li><p>Choose the resource manager that corresponds to the target system. In this example we
will use the <b>Open MPI</b> resource manager, which is used to control the Open MPI Open Runtime
Environment.</p><p><br></p>
<p><img src="images/02chooseResMgrType.png"></p><p><br></p></li>
<li><p>Select <b>Next &gt;</b></p></li>
</ol>
<h2 id="local">Step 2a: Configuring a local resource manager</h2>
<p>
In this example, we will show how to configure PTP to use a local resource manager, for example, where Eclipse is installed on your desktop machine or
the head node of a cluster.
</p>
<p>
The <b>Open MPI connection configuration</b> dialog is used to configure how Eclipse will communicate with the Open MPI environment.
</p>
<ol>
<li>
<p>To configure the simple case of a local resource manager, select <b>Local</b> as the <b>Remote service provider</b>.
</p><p><br></p>
<p><img src="images/02-RM-OpenMPI-Connection-Local.png"></p>
<p><br></p>
</li>
<li>
<p>For the local case, the <b>Connection name</b> will be automatically set to <b>Local</b>.
</p>
<p><br></p>
</li>
<li>
<p>
The <b>Tunneling Options</b> allow communication to be tunneled over a single connection if necessary.
For the local case, it is not required, and only <b>None</b> can be selected.
</p>
<p><br></p>
</li>
<li>
<p>The <b>Local address for proxy connection</b> should be set to the local address of your local machine (<code>localhost</code>, or its host name or IP address).
</p>
<p><br></p>
</li>
<li><p>Select <b>Next &gt;</b></p>
</ol>
<h2 id="remote">Step 2b: Configuring a remote resource manager</h2>
<p>This example will demonstrate configuring a remote resource manager, where
Eclipse and PTP are on your local laptop or workstation, and PTP
controls a remote target system.
<p>A remote resource manager allows PTP to control a remote target machine. To accomplish this, PTP uses the services of
a <i>remote service provider</i>. Currently supported remote service providers include the <b>Remote Tools</b> package (a part
of PTP) and the <b>Eclipse Remote Systems Explorer (RSE)</b> which is an optional package that can be installed at any time.
<b>The preferred remote service provider is Remote Tools</b> which supports all PTP and Remote Development Tools (RDT) functionality.</p>
<p>See also <a href="localVsRemote.html">Local vs. Remote Projects</a> for more information on the differences.
<p>
RSE may be used if your remote system does not use the <code>ssh</code>
protocol for remote connections,
or you wish to use the additional functionality that RSE provides. See the RSE documentation
for more information. We will only consider Remote Tools here, but the steps for configuring RSE are similar.
<p></p>
<ol>
<li>
<p>In the <b>Open MPI connection configuration</b> dialog, select <b>Remote Tools</b> as the <b>Remote service provider</b>.
</p>
<p><br></p>
<p><img src="images/02-RM-OpenMPI-Connection-Remote0.png"></p><p><br></p>
</li>
<li>
<p>
At this point, you need to configure a <b>Connection name</b>.
This will differ depending on the remote service provider that you selected in the previous step.
The following steps describe configuring a <b>Remote Tools</b> location.
</p>
<p><br></p>
</li>
<ol type="a">
<li>
<p>Select <b>New...</b></p>
<p><br></p>
</li>
<li>
<p>In the <b>Remote Host</b> dialog, enter a name for the connection in the <b>Target Name</b> field (can be anything).</p>
<p><br></p>
<p><img src="images/02newRemoteHost.png"></p>
<p><br></p>
</li>
<li><p>Select the <b>Remote Host</b> radio button.</p><p><br></p></li>
<li><p>Enter the address of the remote host in the <b>Host</b> field.</p><p><br></p></li>
<li><p>The <b>Port</b> field should be left at <code>22</code> unless your installation uses a different port for <code>ssh</code> connections.</p><p><br></p></li>
<li><p>Enter your user name on the remote machine in the <b>User</b> field.</p><p><br></p></li>
<li><p>If you use password authentication, select the <b>Password based authentication</b> radio button and enter the password in the <b>Password</b> field.</p><p><br></p></li>
<li><p>If you use key based authentication, select the <b>Public key based authentication</b> radio button, select the file containing your public key, and enter the passphrase for your key (or leave blank if you don't use a passphrase).</p><p><br></p></li>
<li><p>Click <b>Finish</b></p><p><br></p></li>
</ol>
<li>
<p>The <b>Tunneling Options</b> allow communication to be tunneled over a single connection if supported by the remote service provider.
To enable tunneling, select the <b>SSH port forwarding</b> radio button.</p>
<p><br></p>
</li>
<li>
<p>
If you don't wish to use port forwarding, select the <b>None</b> radio button and enter the address of your local machine (its host name, or IP address) in
the <b>Local address</b> field. You may need to reconfigure or disable the firewall on your local machine if this option is selection.
Note that if your site does not allow outbound connections from the remote machine to your local machine, then you <i>must</i> use port forwarding.</p>
<p><br></p>
</li>
<li><p>Select <b>Next &gt;</b></p></li>
</ol>
<h2 id="spec">Step 3: Resource manager-specific configuration</h2>
<p>The contents of the resource manager-specific configuration page will depend
on the type of resource manager that was initially selected. In this section we will show how to configure an <b>Open MPI</b> resource manager.
Please refer to the IBM PE, IBM LoadLeveler,
PBS, or SLURM resource manager documentation for information on these systems.</p>
In this case, the <b>Open MPI tool configuration</b> dialog is shown.
You will not normally need to change this information. Just leave the <b>Open MPI version</b> set to <b>Auto Detect</b>,
and default values will automatically loaded into the fields.</p>
<p><img src="images/02-RM-OpenMPI-Configuration.png"></p>
<ol>
<li><p>If you wish to specify the commands for the Open MPI environment, or add extra arguments,
select a specific Open MPI version and uncheck the <b>Use default settings</b> checkbox.</p>
<p><br></p></li>
<ol>
<li><p><b>Launch command</b>: A command line executed to launch the parallel application with Open MPI.</p><p><br></p></li>
<li><p><b>Debug command</b>: A command line executed to use Open MPI to launch a debug session for the parallel application.</p><p><br></p></li>
<li><p><b>Discover command</b>: A command line executed when the Resource Manager is started, to collect information about the Open MPI environment..</p><p><br></p></li>
<li><p><b>Path to installation</b>: If not empty, then all commands are prefixed with this path.</p><p><br></p></li>
</ol>
<p>Only a single command is allowed on each command field.
Several place holders (macros) are allowed, the most relevant are:</p>
<ul>
<li><b>Open_MPI_args</b>: Command line arguments to be passed to the mpirun command, specifying options selected in the launch configuration dialog.</li>
<li><b>Open_MPI_env</b>: Command line arguments to be passed to the mpirun command, specifying name of environment variables.</li>
<li><b>execPath</b> and <b>execName</b>: Path and name of the executable of the parallel application to be launched by mpirun.
<li><b>progArgs</b>: arguments to be passed to the parallel application.</li>
</ul>
<li><p>If you have installed Open MPI in a non-standard location, or it is not in your path, uncheck the <b>Use default location</b> checkbox, then
enter the path to the installation <code>bin</code> directory. So, for example if your installation is in <code>/usr/local/openmpi-1.3.4</code>, you
would enter <code>/usr/local/openmpi-1.3.4/bin</code> for the location.</p></li>
<p>
<li><p>Select <b>Next &gt;</b></p></li>
</ol>
<h2 id="name">Step 4: Naming the resource manager configuration</h2>
<p>The next dialog is <b>Choose Resource Manager Name and Description</b> which provides an opportunity
to change how the resource manager is displayed.</p>
<p><img src="images/02ChooseResMgrNameAndDesc.png"></p>
<ol>
<li><p>If you wish to change the name or description, uncheck the <b>Use default name and
description</b> checkbox.</p><p><br></p></li>
<ol>
<li><p>Enter a new name in the <b>Name</b> field. Anything can be entered.</p><p><br></p></li>
<li>
<p>Enter a new description in the <b>Description</b> field. Anything can be entered.</p><p><br></p>
</li>
</ol>
<li><p>If you want the resource manager to start automatially when you start a new Eclipse session, check the <b>Automatically start resource
manager when Eclipse starts</b> checkbox.</p><p><br></li>
<li><p>Select <b>Next &gt;</b></p></li>
</ol>
<h2 id="finish">Step 5: Finishing resource manager configuration</h2>
<p>The final dialog is the <b>Select Service Configuration</b> page. This page allows you to add the resource manager to an existing service configuration,
or create a new service configuration for the resource manager. Service configurations can be shared with users in order to simplify the configuration
of PTP.
<p><img src="images/02rmServiceConfig.png"></p>
<ol>
<li><p>If there are no existing configurations, you will need to create a new one. You can either choose a new name or
leave the default.</p><p><br></p></li>
<li><p>If there are existing configurations, you can add the resource manager to an existing configuration. Just select the
configuration you wish to add it to.</p><p><br></p></li>
<li><p>Select <b>Finish</b></p><p><br></p></li>
</ol>
<p>The new Resource Manager should appear in the list of Resource
Managers.</p>
<p><img src="images/02-RM-OpenMPI-View-List.png"></p>
<h2 id="start">Step 6: Starting the resource manager</h2>
<p></p>
<ol>
<li><p>To start the resource manager, right mouse click on the resource manager in the <b>Resource
Managers view</b>, then select <b>Start Resource Manager</b> from the context menu.</p><p><br></p>
<p><img src="images/02-RM-OpenMPI-View-Start.png"></p><p><br></p>
</li>
<li><p>The resource manager icon should change color to green to indicate has been successfully
started.</p><p><br></p>
<p><img src="images/02-RM-OpenMPI-View-Running.png"></p><p><br></p>
</li>
<li>
<p>In the <b>Machines view</b> you should see an icon representing your target system and icons
showing status of the node(s).</p><p><br></p>
<p><img src="images/02-RM-OpenMPI-View-Machines.png"></p><p><br></p>
</li>
<li><p>If the resource manager fails to start (the icon is red), right click on the resource
manager and select <b>Stop Resource Manager</b>. Check the log files for the reason that the
resource manager failed to start, correct the error and restart again.</p></li>
</ol>
<h2 id="edit">Editing a resource manager</h2>
<p>It is sometimes necessary to change the configuration of an existing resource manager, for example, to change the remote machine that the resource manager controls. Note that the resource manager cannot be edited when it is running.</p>
<ol>
<li><p>If the resource manager is running, stop it first. Right-click on the resource manager and
select <b>Stop Resource Manager</b></p><p><br></p></li>
<li><p>Right-click on the resource manager and select <b>Edit Resource Manager</b><p><br></p></p>
<p><img src="images/02-RM-OpenMPI-View-Edit.png"></p><p><br></p>
</li>
<li><p>Modify the required configuration settings and click <b>Finish</b>.</p><p><br></p></li>
<li><p>Restart the resource manager.</p></li>
</ol>
<h2 id="rm">Removing a Resource Manager</h2>
<p>If the resource manager is no longer required, it can be removed from the <b>Resource Managers view</b></p>
<ol>
<li><p>If the resource manager is running, stop it first. Right-click on the resource manager and
select <b>Stop Resource Manager</b></p><p><br></p></li>
<li><p>Right-click on the resource manager and select <b>Remove Resource Manager</b></p><p><br></p>
<p><img src="images/02-RM-OpenMPI-View-Remove.png"></p><p><br></p>
</li>
<li>
<p>You will be prompted to confirm removal. Click <b>OK</b></p>
</li>
</ol>
<p>Proceed to <a href="03pLaunchConfig.html">Launching a parallel application</a>.
<p>&nbsp;
<p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a>
</body>
</html>