Simple job with data manipulation
From MediaWiki
(Difference between revisions)
Line 51: | Line 51: | ||
[ngrkic@ui hello.SE]$ cat run.sh | [ngrkic@ui hello.SE]$ cat run.sh | ||
- | + | #Downloading source for SE | |
- | + | lcg-cp lfn:/grid/aegis/nikola/hello.SE/hello.c 'hello.c' | |
- | + | ||
- | + | #Downloading script that compiles source code and execute program | |
- | + | lcg-cp lfn:/grid/aegis/nikola/hello.SE/hello.sh 'hello.sh' | |
- | + | ||
- | + | #runing compile & execute script | |
- | + | chmod +x hello.sh | |
- | + | ./hello.sh | |
- | + | ||
- | + | ls | |
+ | #Uploads output to SE | ||
+ | lcg-cr -l lfn:/grid/aegis/nikola/hello.SE/std.out file:`pwd`/std.out | ||
+ | lcg-cr -l lfn:/grid/aegis/nikola/hello.SE/std.err file:`pwd`/std.err | ||
5. Creating VOMS proxy: | 5. Creating VOMS proxy: |
Revision as of 22:47, 10 December 2011
This is simple single job submitting example with data management. In this case, WN will download source code and executing script from SE and after successful ending of job, result will be uploaded on SE.
Content of uploaded files:
hello.c
#include <stdio.h> int main() { printf ("hello world!!\n"); return 0; }
hello.sh
#Compile C file gcc hello.c -o hello #Execute hello program ./hello
1. Extract files
[ngrkic@ui jobovi]$ tar xvzf hello.SE.tgz
2. Enter directory hello.SE
[ngrkic@ui jobovi]$ cd hello.SE
3. List directory
[ngrkic@ui hello.SE]$ ll hello.SE
4. See content of files
[ngrkic@ui hello.SE]$ cat hello.jdl Executable = "run.sh"; Arguments = ""; StdOutput = "std.out"; StdError = "std.err"; InputSandbox = {"run.sh"}; OutputSandbox = {"std.out", "std.err"}; Requirements = RegExp("ce64.ipb.ac.rs*",other.GlueCEUniqueID);
[ngrkic@ui hello.SE]$ cat run.sh
- Downloading source for SE
lcg-cp lfn:/grid/aegis/nikola/hello.SE/hello.c 'hello.c'
- Downloading script that compiles source code and execute program
lcg-cp lfn:/grid/aegis/nikola/hello.SE/hello.sh 'hello.sh'
- runing compile & execute script
chmod +x hello.sh ./hello.sh
ls
- Uploads output to SE
lcg-cr -l lfn:/grid/aegis/nikola/hello.SE/std.out file:`pwd`/std.out lcg-cr -l lfn:/grid/aegis/nikola/hello.SE/std.err file:`pwd`/std.err
5. Creating VOMS proxy:
[ngrkic@ui hello.SE]$ voms-proxy-init -voms aegis
6. Submiting hello job:
[ngrkic@ui hello.SE]$ glite-wms-job-submit -a hello.jdl
7. Requesting Job status:
[ngrkic@ui hello.SE]$ glite-wms-job-status https://wms.ipb.ac.rs:9000/PhTXU-tuefu4iuvIotYG9g ======================= glite-wms-job-status Success ===================== BOOKKEEPING INFORMATION: Status info for the Job : https://wms.ipb.ac.rs:9000/g2ntHSCHYN7oeH2l9eS_dg Current Status: Done (Success) Logged Reason(s): - - Job terminated successfully Exit code: 0 Status Reason: Job terminated successfully Destination: ce64.ipb.ac.rs:2119/jobmanager-pbs-aegis Submitted: Sat Dec 10 22:54:28 2011 CET ==========================================================================
8. Download output file from SE
[ngrkic@ui hello.SE]$ lcg-cp lfn:/grid/aegis/nikola/hello.SE/std.out file:/home/ngrkic/jobovi/hello.SE/std.out
9.