The acronym ARC stands for Advanced Resource Connector. It is a grid computing middleware developed and maintained by NorduGrid. Durham has an ARC Computing Element (CE) grid front-end on top of the cluster. This page contains information how to submit to any available ARC CE using ARC client tools.
A 24h hour proxy certificate with VOMS extension is created as
arcproxy -S pheno -c validityPeriod=24h -c vomsACvalidityPeriod=24h
The user needs to write instructions for ARC, so that it knows what to do on the actual node and which files to send with the submission. To parse job options and definitions, ARC uses the extended Resource Specification Language (xRSL). Here is a simple example (submit.xrsl) which will do the job for our c++ example.
& (executable = "simple") (arguments = "input.txt") (jobName="TestJob") (inputFiles = ("input.txt" "") ) (outputFiles = ("output.txt" "") ) (stdout = "stdout") (stderr = "stderr") (walltime="240") (count="1") (countpernode="1")
More about the syntax and rules can be found from the documentation http://www.nordugrid.org/documents/xrsl.pdf.
The next step is to submit the job invoking the arcsub command. In addition to the xRSL file, the user needs to specify to computing element he or she is submitting using the -c option.
arcsub -c ce1.dur.scotgrid.ac.uk submit.xrsl
During the submission, all the information about the job is stored into a job database. The defaul job database is located at ~/.arc/jobs.dat. With the -j option one can define a separate job database.
arcsub -j jobs.xml -c ce1.dur.scotgrid.ac.uk submit.xrsl
This can be useful in order to keep track of different sets of jobs. If needed, the job database can be reconstructed later on using the arcsync command
arcsync -j jobs.xml -c ce1.dur.scotgrid.ac.uk
This creates a job database with all users jobs on the specified CE.
After submission, the arcsub command will print out a jobid for the submitted job. As mentioned earlier, this id is also stored in the job database. In order to make a query of a status of the job, use the arcstat command
arcstat -j jobs.xml
This will print out the status of all the jobs in the database. If you want to find the status of a specific job, use its id
arcstat -j jobs.xml <jobid>
After submission, it can take some time before this job reaches the information system.
Possible job status (depending on the middleware)
When a job has finished, you can download the outpu with arcget. It will dowload all the output files, specified in the submission script, and clean up the information system and the job database.
arcget -j jobs.xml (<jobid>)
If you want to terminate a run, use arckill
arckill -j jobs.xml (<jobid>)
More about the command line client tools can be found from the documentation http://www.nordugrid.org/documents/arc-ui.pdf.