Submitting Grid Job at TeraGrid
Creating Grid Proxy
grid-proxy-init
$ grid-proxy-init Your identity: [your cert info] Enter GRID pass phrase for this identity: Creating proxy .................................................................................................. Done Your proxy is valid until: Wed Apr 7 04:10:14 2010
grid-proxy-info
$ grid-proxy-info subject : [subject info] issuer : [issuer info] identity : [identity info] type : Proxy draft (pre-RFC) compliant impersonation proxy strength : 512 bits path : /tmp/x509up_u699 timeleft : 17:55:43
How to submit a job for 2D, 3D Solver (CFD)
An example for 2D solver
Creating a RSL file (script for job)
$ cat 2d_comp.gt2.rsl & (directory=[Home directory]/JOB/test040710) (executable=[Home directory]/2D_Comp-2.0/2D_Comp-2.0) (arguments= -mesh eAIRS_naca15.msh -param endowed.inp ) (stdout=2D_Comp-2.0.out) (stderr=2D_Comp-2.0.err)
The directory specified in the above script is where the input files can be found and where the output files will be created. So, for script to run, you will need to create a directory called JOB and test040710 and put the files eAIRS_naca15.msh and endowed.inp into the test040710 directory since those are the files we specified as arguments for the CFD code. One final note, the cat command only works if you already have a file called 2d_comp_gt2.rsl, otherwise you will need to create this file in your favorite editor (e.g. vi, emacs, etc).
$ cat 2d_incomp.gt2.rsl & (directory=[Home directory]/JOB/test_2d_incomp) (executable=[Home directory]/2D_Incomp-2.0/2D_Incomp-2.0) (arguments= -mesh eAIRS_naca15.msh -param endowed.inp ) (stdout=2D_Incomp-2.0.out) (stderr=2D_Incomp-2.0.err)
Submitting the job
For abe, grid.abe.ncsa.uiuc.edu for resource
$ globusrun -r ranger.tacc.teragrid.org -f 2d_comp.gt2.rsl
$ globusrun -r ranger.tacc.teragrid.org -f 2d_incomp.gt2.rsl
[Not working] An example for 3D Solver (MPI code) with Globus Toolkit
Creating a RSL file (script for job)
- cat 3d.rsl.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ns2:job xmlns="http://schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:ns2="http://www.globus.org/namespaces/2004/10/gram/job/description" xmlns:ns3="http://www.globus.org/namespaces/2004/10/gram/job/types" xmlns:ns4="http://www.globus.org/namespaces/2004/10/rft" xmlns:ns5="urn:abc" xmlns:ns6="urn:def"> <ns2:executable>[Home directory]/eAIRS_3DP_Wing2.0/eAIRS_3DP_Wing2</ns2:executable> <ns2:directory>[Home directory]/JOB/test_3d</ns2:directory> <ns2:argument>-mesh</ns2:argument> <ns2:argument>eAIRS_RectangWing_P.msh</ns2:argument> <ns2:stdout>Wing.out</ns2:stdout> <ns2:stderr>Wing.err</ns2:stderr> <ns2:count>4</ns2:count> <ns2:jobType>mpi</ns2:jobType> </ns2:job>
- For the MPI job, jobType must be mpi
- count is the number of processors (in the example, it uses 4 processors)
Submitting the job
globusrun-ws -submit -b -F ranger.tacc.teragrid.org -Ft SGE -f 3d.rsl.xml
An example for 3D Solver (MPI code) with SGE (qsub) at Ranger
Creating a Job Script
- $ cat jong_mpi.qsub
jong_mpi.qsub
#!/bin/bash # #$ -N e-AIRS_3D_Wing_2.0 #$ -cwd #$ -j y #$ -S /bin/bash #$ -V #$ -l h_rt=01:30:00 #$ -q normal #$ -pe 16way 64 #$ -o 3D_Wing2.out #$ -e 3D_Wing2.err echo "Got $NSLOTS processors." /opt/apps/pgi7_2/mvapich/1.0.1/bin/mpirun \ -np $NSLOTS \ -machinefile /share/home/01415/jonglee/eAIRS_3DP_Wing2.0/machines \ /share/home/01415/jonglee/eAIRS_3DP_Wing2.0/eAIRS_3DP_Wing2.0 -mesh eAIRS_RectangWing_P.msh
- $ Another version by using ibrun
jong_mpi.qsub v2
#!/bin/bash # #$ -N e-AIRS_3D_Wing_2.0 #$ -cwd #$ -j y #$ -S /bin/bash #$ -V #$ -l h_rt=01:30:00 #$ -q normal #$ -pe 16way 64 #$ -o 3D_Wing2.out #$ -e 3D_Wing2.err echo "Got $NSLOTS processors." ibrun /share/home/01415/jonglee/eAIRS_3DP_Wing2.0/eAIRS_3DP_Wing2.0 -mesh eAIRS_RectangWing_P.msh
- -V -l -q -pe are required
- Listing the names of queue (used with -q option)
List all names of queue
$ qconf -sql
List detail of specific queue$ qconf -sq normal
Check Job Status$ qstat
- refer to Ranger User Guide (http://services.tacc.utexas.edu/index.php/ranger-user-guide#Running_Code)
Submitting the job
$ qsub jong_mpi.qsub