Skip to main content
Jump to: navigation, search

Difference between revisions of "Configuration issues"

Line 11: Line 11:
  
 
* There are several types for resource managers to choose from. You may learn about them here:
 
* There are several types for resource managers to choose from. You may learn about them here:
** [[www-03.ibm.com/systems/software/loadleveler/ IBM LoadLeveler]]
+
** [www-03.ibm.com/systems/software/loadleveler/ IBM LoadLeveler]
** [[www-03.ibm.com/systems/software/parallel/ IBM Parallel Environment]]
+
** [www-03.ibm.com/systems/software/parallel/ IBM Parallel Environment]
** [[www.mcs.anl.gov/mpi/mpich2 MPICH2]]
+
** [www.mcs.anl.gov/mpi/mpich2 MPICH2]
** [[www.open-mpi.org/ Open MPI]]
+
** [www.open-mpi.org/ Open MPI]
** [[www.pbsworks.com/ PBS]]
+
** [www.pbsworks.com/ PBS]
** [[https://computing.llnl.gov/linux/slurm/ SLURM]]
+
** [https://computing.llnl.gov/linux/slurm/ SLURM]
 
** Remote Launch
 
** Remote Launch
 
* A ''remote launch'' is simply the execution of a binary on a remote machine, unmediated by a parallel execution program such as <tt>mpiexec</tt> or <tt>mpirun</tt> or a batch system such as PBS.
 
* A ''remote launch'' is simply the execution of a binary on a remote machine, unmediated by a parallel execution program such as <tt>mpiexec</tt> or <tt>mpirun</tt> or a batch system such as PBS.
 
* If you are unsure which to use, try to <tt>ssh</tt> into the machine to see if it supports a particular type (e.g. run <tt>locate mpich2/lib</tt> to see if the mpich2 libraries are installed). If you are still unsure, visit the site page for the machine if there exists one; otherwise ask your systems administrator what parallel and/or job submission services are available.
 
* If you are unsure which to use, try to <tt>ssh</tt> into the machine to see if it supports a particular type (e.g. run <tt>locate mpich2/lib</tt> to see if the mpich2 libraries are installed). If you are still unsure, visit the site page for the machine if there exists one; otherwise ask your systems administrator what parallel and/or job submission services are available.
 
* See the user guide on [[http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.ptp.doc.user%2Fhtml%2Ftoc.html setting up resource managers in general]] to learn how to add a resource manager.
 
* See the user guide on [[http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.ptp.doc.user%2Fhtml%2Ftoc.html setting up resource managers in general]] to learn how to add a resource manager.
* In addition, see the user guide documentation on setting up IBM [[http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_1 LoadLeveler]], [[http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_2 Parallel Environment]], [[http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_3 PBS]], and [[http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_4 SLURM]] if you are configuring those.
+
* In addition, see the user guide documentation on setting up IBM [http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_1 LoadLeveler], [http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_2 Parallel Environment], [http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_3 PBS], and [http://help.eclipse.org/indigo/index.jsp?nav=%2F46_6_4 SLURM] if you are configuring those.
  
  

Revision as of 13:49, 5 January 2012

Overview

  • This page is intended to a provide a single source of information on configuration issues, though it links to existing documentation in the user guides, mailing lists, and tutorials.
  • In order to run a remote parallel application in Eclipse, at minimum you will need to set up a resource manager configuration, run configuration, and set environment variables.
  • The resource manager is a configuration utility for specifying what resource (i.e. machine) will be used and how (e.g. what scheduler).
  • A run configuration contains information particular to the run of a project on a given resource. The resource must be set up through the resource manager before the run configuration can be done.
  • Theses guides assume the PTP plug-ins are installed.


Resource Manager Setup

  • There are several types for resource managers to choose from. You may learn about them here:
    • [www-03.ibm.com/systems/software/loadleveler/ IBM LoadLeveler]
    • [www-03.ibm.com/systems/software/parallel/ IBM Parallel Environment]
    • [www.mcs.anl.gov/mpi/mpich2 MPICH2]
    • [www.open-mpi.org/ Open MPI]
    • [www.pbsworks.com/ PBS]
    • SLURM
    • Remote Launch
  • A remote launch is simply the execution of a binary on a remote machine, unmediated by a parallel execution program such as mpiexec or mpirun or a batch system such as PBS.
  • If you are unsure which to use, try to ssh into the machine to see if it supports a particular type (e.g. run locate mpich2/lib to see if the mpich2 libraries are installed). If you are still unsure, visit the site page for the machine if there exists one; otherwise ask your systems administrator what parallel and/or job submission services are available.
  • See the user guide on [setting up resource managers in general] to learn how to add a resource manager.
  • In addition, see the user guide documentation on setting up IBM LoadLeveler, Parallel Environment, PBS, and SLURM if you are configuring those.


Run Configuration


Loading Remote Environment Variables for a Synchronized Project

  • An environment variable is a named value associated with a terminal session. Values take the form of strings, but numeric values can be stored and manipulated as strings.
  • Environment variables are local; thus, if you change a variable in a terminal session, its changes affect only that terminal session.
  • Environment variables are inherited by child processes. Child processes cannot change environment variables associated with the parent.
  • Some important environment variables:
    • PATH: paths to binary files. If you have installed software in user space, make sure you update your $PATH to include the path to those binaries; then you can call them from anywhere.
    • LD_LIBRARY_PATH: paths to shared libraries. If an application in your $PATH uses shared libraries not within $LD_LIBRARY_PATH, you'll need to set $LD_LIBRARY_PATH to include them. Otherwise you will get an error such as: "libsomething.so: could not find shared library"
  • The command for defining an environment variable is export VAR=VALUE, where VAR is the name of the environment variable and VALUE is the value.
  • After definition, environment variables may be referenced as $VAR, with a dollar sign ($) before the variable name. E.g. echo $VAR following the above definition will print VALUE.
  • E.g.:
    • export GREETING="Hello"
    • export PATH=$PATH:$HOME/bin
  • Environment variables can be set per session on the command line, but are not stored. To store them, one may define them in ~/.bashrc or ~/.profile so that they load on startup (the files ~/.bashrc and ~/.profile contain instructions which execute upon startup of a terminal session).
  • If you change ~/.bashrc or ~/.profile and want to start a new session with its changes, use the command source [filename], as in source ~/.bashrc or source ~/.profile.
  • If you are not using bash, then you will need to change the shell-specific configuration.


Private/Public Key Decryption Failure

  • If you encounter a "failed to decrypt key_name" message, it may be due to a disparity between the encryption algorithms that generate the imported and exported keys rather than misconfiguration.
  • Try updating to Jcsh 0.1.44 from Orbit by adding [this link] as a repository.
  • See [user-ptp archives] for more details.
  • Jcsh 0.1.44 will be released automatically with Juno.


Configuration / Setup of SDM

  • Download the SDM from http://www.eclipse.org/downloads/download.php?file=/tools/ptp/updates/indigo/ptp-proxy-5.0.4-201111121445.zip
  • Unzip this and run 'sh BUILD' in proxy/org.eclipse.ptp.macosx.x86_5.0.4.201111121445
  • Get a copy of gfortran from here: http://hpc.sourceforge.net/ then install it in / (as root)
  • Launch Eclipse and create a new Fortran Hello World project.
  • Edit the makefile; change the fortran compiler to /usr/local/bin/gfortran, and remove the -O2 optimization.
  • Compile it by clicking on the hammer.
  • Create an Open MPI resource manager.
  • Create a debug configuration using this project and RM, set the executable, and set number of procs to 1.
  • On the debug tab, select SDM from step 2. Make sure session host is 'localhost'.
  • Launch the debug session.

Back to the top