[mpich2-commits] r4079 - in mpich2/trunk/src/pm/hydra: . bootstrap/include bootstrap/src pm/central

balaji at mcs.anl.gov balaji at mcs.anl.gov
Sun Mar 15 02:23:33 CDT 2009


Author: balaji
Date: 2009-03-15 02:23:32 -0500 (Sun, 15 Mar 2009)
New Revision: 4079

Modified:
   mpich2/trunk/src/pm/hydra/README
   mpich2/trunk/src/pm/hydra/bootstrap/include/bsci.h
   mpich2/trunk/src/pm/hydra/bootstrap/src/bsci_init.c
   mpich2/trunk/src/pm/hydra/pm/central/proxy_utils.c
Log:
Cleanup and documentation.

Modified: mpich2/trunk/src/pm/hydra/README
===================================================================
--- mpich2/trunk/src/pm/hydra/README	2009-03-15 04:31:17 UTC (rev 4078)
+++ mpich2/trunk/src/pm/hydra/README	2009-03-15 07:23:32 UTC (rev 4079)
@@ -4,8 +4,12 @@
 Hydra is a process management system for starting parallel jobs,
 especially MPICH2 jobs. Hydra is designed to natively work with
 multiple daemons such as ssh, pbs, slurm and sge. However, in the
-current release, only ssh is supported.
+current release, only ssh and fork are supported.
 
+More detailed documentation of the internal workings of Hydra are
+available on the "Developer Documentation" wiki page:
+http://wiki.mcs.anl.gov/mpich2/index.php/Category:Design_Documents
+
 How to use Hydra
 ----------------
 
@@ -37,7 +41,7 @@
 
 To run your application on these nodes, use mpiexec:
 
- $ mpiexec -n 4 -f hosts ./app
+ $ mpiexec -f hosts -n 4 ./app
 
 
 Environment settings
@@ -51,3 +55,28 @@
 
   For csh/tcsh:
     setenv HYDRA_HOST_FILE <path_to_host_file>/hosts
+
+
+Bootstrap servers
+-----------------
+
+Hydra supports SSH and FORK bootstrap servers to launch processes. You
+can pick these through the mpiexec option --bootstrap:
+
+ $ mpiexec --bootstrap ssh -f hosts -n 4 ./app
+
+ (or)
+
+ $ mpiexec --bootstrap fork -f hosts -n 4 ./app
+
+The default bootstrap server is ssh.
+
+
+X Forwarding
+------------
+
+X-forwarding is specific to each bootstrap server. Some servers do it
+by default, while some don't. For ssh, this is disabled by default. To
+enable it, you should use the option --enable-x to mpiexec.
+
+ $ mpiexec --enable-x -f hosts -n 4 ./app

Modified: mpich2/trunk/src/pm/hydra/bootstrap/include/bsci.h
===================================================================
--- mpich2/trunk/src/pm/hydra/bootstrap/include/bsci.h	2009-03-15 04:31:17 UTC (rev 4078)
+++ mpich2/trunk/src/pm/hydra/bootstrap/include/bsci.h	2009-03-15 07:23:32 UTC (rev 4079)
@@ -18,7 +18,7 @@
 
 extern struct HYD_BSCI_fns HYD_BSCI_fns;
 
-HYD_Status HYD_BSCI_init(char * bootstrap);
+HYD_Status HYD_BSCI_init(char *bootstrap);
 HYD_Status HYD_BSCI_launch_procs(void);
 HYD_Status HYD_BSCI_finalize(void);
 HYD_Status HYD_BSCI_get_usize(int *size);

Modified: mpich2/trunk/src/pm/hydra/bootstrap/src/bsci_init.c
===================================================================
--- mpich2/trunk/src/pm/hydra/bootstrap/src/bsci_init.c	2009-03-15 04:31:17 UTC (rev 4078)
+++ mpich2/trunk/src/pm/hydra/bootstrap/src/bsci_init.c	2009-03-15 07:23:32 UTC (rev 4079)
@@ -10,7 +10,7 @@
 
 struct HYD_BSCI_fns HYD_BSCI_fns;
 
-HYD_Status HYD_BSCI_init(char * bootstrap)
+HYD_Status HYD_BSCI_init(char *bootstrap)
 {
     HYD_Status status = HYD_SUCCESS;
 
@@ -44,10 +44,10 @@
     if (HYD_BSCI_fns.finalize == NULL)
         HYD_BSCI_fns.finalize = HYD_BSCU_finalize;
 
-fn_exit:
+  fn_exit:
     HYDU_FUNC_EXIT();
     return status;
 
-fn_fail:
+  fn_fail:
     goto fn_exit;
 }

Modified: mpich2/trunk/src/pm/hydra/pm/central/proxy_utils.c
===================================================================
--- mpich2/trunk/src/pm/hydra/pm/central/proxy_utils.c	2009-03-15 04:31:17 UTC (rev 4078)
+++ mpich2/trunk/src/pm/hydra/pm/central/proxy_utils.c	2009-03-15 07:23:32 UTC (rev 4079)
@@ -93,7 +93,7 @@
                  * where they are not removed, we do it ourselves. */
                 if (*str == '"') {
                     str++;
-                    str[strlen(str)-1] = 0;
+                    str[strlen(str) - 1] = 0;
                 }
                 HYDU_Env_putenv(str);
             }



More information about the mpich2-commits mailing list