Table of Contents | ||
---|---|---|
|
Excerpt | ||
---|---|---|
| ||
Submit a cmdline or cmdrange job |
Description
qbsub submits a command for the Supervisor to schedule. If the --range is specified, a job with an agenda will be submitted.
Usage
qbsub [options] command
where command is a command to be executed on the remote host.
Options
Option | Description |
---|---|
--name string | Job name |
--priority int | Priority value |
--requirements string | Job requirements expression - Job Requirements |
--reservations string | Job reservations expression - Job Reservations |
--restrictions string | Job restrictions expression - worker_restrictions |
--pid int | Parent job to submitted job |
--pgrp int | Process group ID |
--cluster string | Cluster specification |
--kind string | Job kind |
--account string | Arbitrary accounting data string |
--user string | User account to use Note: needs admin or impersonation privilege |
--domain string | Qube! domain to use Note: needs admin or impersonation privilege |
--cpus int | Number of subjobs to run |
--max_cpus int (or "*") | Maximum number of instances to use ("*" means "no limit") for Smart-share auto-expansion (new in 6.6) |
--processors int | Number of processors to reserve per host |
--status string | Initial job state (blocked or pending) |
--hosts string,… | List of comma delimited hosts to run job on |
--omithosts string,… | List of comma delimited hosts to not run job on |
--groups string,… | List of comma delimited host groups to run job on |
--omitgroups string | List of comma delimited host groups to not run job on |
--hostorder string | Order in which the hosts are preferred - hostorder syntax |
--flags string,… | Flags (see below for description of all available flags) |
Email job owner when job is complete. | |
--dependency string | Wait until trigger string condition has been met before starting. |
--preexec string | Execute command string on the Supervisor when the job starts running. |
--postexec string | Execute command string on the Supervisor when the job completes. |
--waitfor int | Wait until job ID int is done before starting. |
--timelimit int | Automatically kill the job if it runs longer than int seconds. |
--agendatimelimit int | Automatically kill an agenda item if it runs longer than int seconds. |
--waiton | Qbsub will block until the submitted job completes. |
--range string | Execute over range string QB_FRAME_NUMBER |
--padding int | Range pad value. |
--reverse | Reverse the frame range |
--binary | Use binary for frame range ordering |
--partitions int | Number of partitions to use (default: # of frames) |
--chunk int | Number of frames to use per partition (default: 1) |
--p_agenda string | Specify which frames to use as p-agenda (default: 1st, last, and middle frames) |
--p_priority int | Set priority for p-agenda (default: site-wide value, or 1) |
--p_cpus int | Number of subjobs to use to process p-agenda (default: length of p-agenda list) |
--export string | Export job to *.qja file. |
--import string | Import job from *.qja file. |
--address string, … | List of string email addresses when using --email option |
--type string --prototype string | Use string job type. |
--data string | Raw package data string (for use only with --type option). |
--retrysubjob int | Retry each subjob int times. |
--retrywork int | Retry each work agenda item int times. |
--retryworkdelay int | Insert artificial delay of int seconds before each automatic retry of work item |
--preflights string,... | instance-level preflights (comma-separated) |
--postflights string,... | instance-level postflights (comma-separated) |
--agenda_preflights string,... | agenda-level preflights (comma-separated) |
--agenda_postflights string,... | agenda-level posflights (comma-separated) |
--xml | Output in XML format |
--help | Command help |
--version | Command version |
Anchor | ||||
---|---|---|---|---|
|
Include+ | ||||||
---|---|---|---|---|---|---|
|
Notes
Examples
Submit "ls -l" job named "myjob1" to run on 2 cpus:
% qbsub --name myjob1 --cpus 2 ls -l
Submit maya render to machine that has maya installed:
% qbsub -priority 1 --reservations host.maya=1 Render -s 1 -e 30 myscene.ma
Submit a render job at priority 1 which matches host qb003:
% qbsub -priority 1 --requirements host.name=qb003 Render -s 1 -e 30 myscene.ma
Submit a simple ls job and send testuser@example.com notification when the job is complete:
% qbsub --mail --address "testuser@example.com" ls
Export to job.qja template file a simple dir command with priority set to 5:
% qbsub --priority 5 --export job.qja dir
Import job.qja template and submit this template and override the cluster specification to /example:
% qbsub --cluster /example --import job.qja
Submit an agenda-based, 200-frame Maya "Render" job, to be processed by 10 subjobs:
% qbsub –range 1-200 –cpus 10 Render –s QB_FRAME_NUMBER –e QB_FRAME_NUMBER /path/to/myscene.ma
Same as above, but use p-agenda to process some key frames at higher priority. We'll let the system choose the p-agenda, which will be the 1st, last, and middle frames of the entire range (i.e. 1, 200, and 99). Note als that this submission will generate 2 jobs:
% qbsub –range 1-200 –flags "p_agenda" –cpus 10 Render –s QB_FRAME_NUMBER –e QB_FRAME_NUMBER /path/to/myscene.ma
Same as above, but explicitly specify p-agenda frames. Note that we can omit the "-flags" option in this case:
% qbsub –range 1-200 –p_agenda "1-200x50" –cpus 10 Render –s QB_FRAME_NUMBER –e QB_FRAME_NUMBER /path/to/myscene.ma
Execute "myprog /home/data/myfile.data", but convert the path at runtime to a suitable path on the worker if necessary (as dictated by the worker_path_map defined on the worker):
See also
How to restrict a host to only one instance of a given kind of job, but still allow other jobs