Skip to main content

qbpreempt

Description

qbpreempt requests the Supervisor to tell a job to release its host if and when it can do so without wasting CPU time. The job will be removed from the host when it finishes the frame or agenda item it's working on, and asks the Supervisor for another agenda item. Instead, the Supervisor will instruct the job to "get off" the worker.

The job instance that was removed from the worker will then go back into a pending state, and await re-dispatch as workers again become available.

This command depends upon the job type and will only work if the job that is running supports a qube agenda-based system.

Usage

qbpreempt [options] jobID... | 0

where JobID is one or more job IDs, and 0 is a wild card token representing all the user's jobs.

Options

OptionDescription
--pos intStarting file position at int bytes
--sleep intRefresh every int seconds (default: 60)
--followSimilar to "tail -f"
--workPreempt work (default: on)
--subjobPreempt subjobs (default: on)
--runningPreempt running jobs
--workrunningPreempt running work
--subjobrunningPreempt running subjobs
--user stringPreempt jobs for user string
--type string --prototype stringPreempt jobs with string type
--status stringPreempt jobs with string status (ex. pending)
--name stringPreempt jobs with string name
--kind stringPreempt jobs of string kind
--pid intPreempt jobs with process ID int
--pgrp intPreempt jobs in int process group
--priority intPreempt jobs with int priority
--cluster stringPreempt jobs in string cluster
--cpus intPreempt jobs with a total of int subjobs
--xmlOutput in XML format
--helpCommand help
--versionCommand version

Notes

This command only works on jobs which are in the running state.

Examples

Preempt only subjob 12354.0:

% qbpreempt 12354.0

Preempt all subjobs in 12345:

% qbpreempt 12345

Preempt all of user anthony's jobs:

% qbpreempt --user anthony 0

Preempt all of user anthony's running jobs:

% qbpreempt --running --user anthony 0

See also

qbkill

qbinterrupt

qbmigrate