I would like to distinguish two areas of the problem. 1. Client side, where jobs are submitted from using globus-job-run, globus-job-submit or globusrun commands. On the client side you need to use RSL attributes to specify how many CPUs or nodes should be allocated for a job (*host_count*) on the remote site, or that a type of job is "single" or "mpi" (*job_type*). Please notice that you can also run an MPI parallel job as a "single"-type job. In this case your *executable* must be a shell script that would properly execute the command mpirun.
2. Server side, where GRAM service runs. You can find more details about how jobs are executed investigating job manager scripts (strictly speaking: Perl modules): $GLOBUS_LOCATION/lib/perl/Globus/GRAM/JobManager/fork.pm (default one) and $GLOBUS_LOCATION/lib/perl/Globus/GRAM/JobManager/$LRM.pm (if you use and configured properly a Local Resource Manager like PBS, Torque, SGE, Condor etc.). These scripts interpret received RSL attributes and their values, create an appropriate execution environment and later execute a job, or submit a job to a queueing system. Reading fork.pm and $LRM.pm you should focus on how number of CPUs is determined or how nodes' names are provided to the command mpirun. Regards, Lukasz On Mar 31, 2010, at 8:11 PM, Shuhan Xu wrote: > Hi, > I've already deployed Mpich2 among 4 computers to form a cluster. I > want to deploy a grid among these computers and another cluster with > two nodes. How to deploy it using GT5?(I want to use GRAM to control > jobs.) > > Thanks > Shuhan Xu
