[Swift-commit] r5151 - trunk/docs/userguide
wozniak at ci.uchicago.edu
wozniak at ci.uchicago.edu
Wed Sep 21 12:48:45 CDT 2011
Author: wozniak
Date: 2011-09-21 12:48:45 -0500 (Wed, 21 Sep 2011)
New Revision: 5151
Modified:
trunk/docs/userguide/howto_tips
Log:
Initial documentation of MPICH/Coasters
Modified: trunk/docs/userguide/howto_tips
===================================================================
--- trunk/docs/userguide/howto_tips 2011-09-21 16:41:03 UTC (rev 5150)
+++ trunk/docs/userguide/howto_tips 2011-09-21 17:48:45 UTC (rev 5151)
@@ -27,8 +27,18 @@
Launching MPI jobs from Swift
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-Here is an example of running a simple MPI program.
+There are several ways to run MPI jobs under Swift.
+The simplest is to simply launch the desired +mpiexec+ command line
+locally by using the local provider. Two additional use cases are
+noted here.
+
+==== Submission of MPI jobs to remote queues
+
+// TODO: This seems to require appropriate PBS profile settings
+
+This use case allows the user to submit an MPI job to a remote queue.
+
In SwiftScript, we make an invocation that does not look any different
from any other invocation. In the below code, we do not have any input
files, and have two output files on stdout and stderr:
@@ -65,12 +75,42 @@
provider-specific MPI modes (such as GRAM jobType=mpi) should not be
used. Instead, the mpirun command should be explicitly invoked.
+==== MPICH/Coasters
+
+In this case, the user desires to launch many MPI jobs within a single
+Coasters allocation, reusing Coasters workers for variable-sized jobs.
+The reuse of the Coasters workers allows the user to launch many
+MPI jobs in rapid succession with minimal overhead.
+
+The user must access to MPICH compiled for sockets, with +mpiexec+ in
+the +PATH+ environment variable. Swift uses this MPICH installation
+to launch the user processes on the remote Coasters workers, which are
+able to connect back to +mpiexec+ and coordinate the job launch. The
+infrastructure must allow the user MPI processes to find each other
+and communicate over sockets.
+
+To configure the user MPI job, simply add +mpi.processes+ and
++mpi.ppn+ to the profile in the +tc.file+:
+
+----
+pbs_site my_program /path/to/program null null globus::mpi.processes=16;globus::mpi.ppn=8
+----
+
+Coasters must be set with +jobsPerNode=1+.
+
+This runs +mpiexec+ locally, and allocates 2 Coasters workers (2
+nodes), each with 8 MPI processes. Thus, +MPI_COMM_WORLD+ has size
+16.
+
+
+
Running on Windows
~~~~~~~~~~~~~~~~~~
-Since 10/11/09, the development version of Swift has the ability to run
-on a Windows machine, as well as the ability to submit jobs to a Windows
-site (provided that an appropriate provider is used).
+Swift has the ability to run on a Windows machine, as well as the
+ability to submit jobs to a Windows site (provided that an appropriate
+provider is used).
+
In order to launch Swift on Windows, use the provided batch file
(swift.bat). In certain cases, when a large number of jar libraries are
present in the Swift lib directory and depending on the exact location
More information about the Swift-commit
mailing list