Version 37 (modified by piontek, 12 years ago) (diff) |
---|
- application
- argument
- deadline
- environment
- error
- executable
- grant
- host
- input
- memory
- memory-per-slot
- module
- monitor
- name
- native
- nodes
- not-after
- not-before
- note
- notify
- output
- persistent
- postprocess
- preprocess
- procs
- properties
- queue
- reservation
- stage-in-dir
- stage-in-file
- stage-out-dir
- stage-out-file
- use-reservation
- use-scratch
- walltime
- watch-output
- variable
application
application - name and optionally version of the application to be executed
#QCG application=namd
#QCG application=gromacs/4.6.3
argument
argument - argument of the application. The directive can be used many times, once for every argument.
#QCG argument=arg1 #QCG argument=arg2
deadline
deadline - deadline for the task execution. The directive specifies, that the task has to be finished within defined period of time.
The directive results in using the advance reservation to guarantee the requested quality of service.
The directive cannot be used in conjunction with the reservation and not-after directives.
The argument of the directive is the time period defined in the PnYnMnDTnHnMnS (ISO 8601) format, where:
- P - mandatory character,
- nY - number of years,
- nM - number of months,
- nD - number of days,
- T - time definition separator character (must be present if the values below are used)
- nH - number of hours,
- nM - number of minutes,
- nS - number of seconds.
#QCG deadline=P3DT12H #QCG not-before=2012.07.25
#QCG deadline=P3DT12H
environment
environment - environment variable. The syntax is key -> value. Every variable has be be specified in separate line.
#QCG environment=name -> piontek #QCG environment=location -> poznan
error
error - location where the system has to stage-out the file containing output of the standard error stream. If the location is not the gsiftp:// url it is assumed that it is relative to the directory from which the task was submitted.
#QCG error=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/errors/${JOB_ID}.error #QCG error=error.txt
executable
executable - location of the executable file. The location can be gsiftp:// url or the path to the file. In the second case the location is relative to the directory from which the task was submitted. Optionally it is possible to specify the target name of the file.
#QCG executable=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/executables/exec1 #QCG executable=executables/exec1 #QCG executable=executables/exec1 -> exec-file
grant
grant - name of the grant, in scope of which the task is executed
#QCG grant=plgpiontek_grant
host
host - name of the candidate host, which the task/reservation can be executed/made on. The directive can appear many times to express OR alternative.
#QCG host=reef.man.poznan.pl #QCG host=zeus.cyfronet.pl
input
input - location of the file which content will be passed to standard input stream. If the location is not the gsiftp:// url it is assumed that it is relative to the directory from which the task was submitted.
#QCG input=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/inputs/experiment.input #QCG input=input.txt
memory
memory - declaration of the maximal amount of memory that can be allocated by the application (in MB).
#QCG memory=1024
memory-per-slot
memory-per-slot - declared maximal amount of the memory per slot (core). The total memory requirement is the product of this value and number od slots (cores) used by the application.
#QCG memory-per-slot=512
module
module - name with optional version of the requested software module. This directive is taken into consideration by the broker in the process of choosing the optimal resource which the task can be executed on. Every module has to be specified in separate directive.
#QCG module=nwchem/6.0 #QCG module=namd
monitor
monitor - task monitoring script executed together with the main application. The script can be used for example to monitor output of the application or to do perform any additional action.
#QCG monitor=monitor-script.sh
name
name - human readable name of the task. The name will appear as part of the job identifier.
#QCG name=nobel-experiment
native
native - parameters/requirements passed directly to the queueing system in the queueing system specific format. This directive should be used together with the host one.
Example for the PBS queueing system: (-r y|n Declares whether the job is rerunable.)
#QCG native=-r n
nodes
nodes - requested topology of the parallel application. The directive allows to specify requested number of nodes and slots per node. Optionally it is possible to specify number of processes to be executed on every node. If it is not specify else the number of processes on every node is equal to the number of slots. The syntax is: number_of_nodes:number_of_slots[:number_of_processes]
#QCG nodes=10:5:1 #QCG nodes=12:12
not-after
not-after - directive allowing to specify that the task or reservation has to be executed/reserved "not-later-then". The value of this directive is date with optional time. The directive requires to be specified together with the walltime one and cannot be used with the reservation.
#QCG not-after=2012.08.25 #QCG walltime=PT2H
#QCG not-after=2012.08.25 13:20 #QCG walltime=PT2H
not-before
not-before - directive allowing to specify that the task or reservation has to be executed/reserved "not-earlier-then". The value of this directive is the date with optional time. The directive requires to be specified together with the walltime one and cannot be used with the reservation.
#QCG not-before=2012.07.25 #QCG walltime=PT2H
#QCG not-before=2012.07.25 15:20 #QCG walltime=PT2H
note
note - human readable description of the task
#QCG note=my first QCG task
notify
notify - notify about changes of task status. The directive allows to define the protocol and address which the notification about the change of the status should be sent to. Supported protocols are mail and xmpp/jabber messages.
#QCG notify=mailto:piontek@man.poznan.pl #QCG notify=xmpp:tomasz.piontek@gmail.com
To allow receiving xmpp/jabber messages it can be necessary to add the qcg-notification@… sender address to contacts.
output
output - location where the file containing the standard output should be transfered. The location can be the gsiftp:// url or the path relative to the directory which the task was submitted from.
#QCG output=gsiftp://qcg.man.poznan.pl//home/plgrid/plgpiontek/reef/outputs/${JOB_ID}.output #QCG output=output.txt
persistent
persistent - do not remove the working directory.
IMPORTANT: the directive should be used only for testing as it causes that the working directory is left and consumes storage resource. The working directory can be later cleaned by the qcg-clean command.
#QCG persistent
postprocess
postprocess - task epilog. The value of the directive can be command or path to the script which is executed when the main task finish.
#QCG postprocess=tar cvf wynik.tar *
#QCG postprocess=postprocess-script.sh
preprocess
preprocess - task prolog. The value of the directive can be command or path to the script which is executed before the main task.
#QCG preprocess=mkdir outputs
#QCG preprocess=preprocess-script.sh
procs
procs - number of requested slots/processes for parallel tasks.
#QCG procs=32
properties
properties - node properties. Defines requested properties of the node which the task can be executed on.
#QCG properties=mpi,ib,lustre
queue
queue - queue which the task should be submitted to.
#QCG queue=plgrid
reservation
reservation - reservation identifier. The identifier can be of the local type when the reservation was made directly in the queueing system or of qcg one (default) when the reservation was created by the qcg-reserve command. The directive requires to be used together with the host one to ensure that the task will be submitted to the host where the reservation was done.
#QCG host=reef.man.poznan.pl #QCG reservation=R1366398248299__4039
#QCG host=reef.man.poznan.pl #QCG reservation=piontek.0 local
stage-in-dir
stage-in-dir - input directory
stage-in-file
stage-in-file - input file
stage-out-dir
stage-out-dir - output directory
stage-out-file
stage-out-file - output file
use-reservation
use-reservation - use the advance reservation mechanism
use-scratch
use-scratch - use the scratch space
walltime
walltime - execution duration
watch-output
watch-output - monitor the output and send notifications about the progress
variable
variable - description variable (replaced only in values of QCG directives)