Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

The

...

purpose

...

of

...

the

...

queuing

...

system

...

is

...

(1)

...

to

...

promote

...

the

...

efficient

...

utilization

...

of

...

our

...

computer

...

facilities,

...

and

...

(2)

...

to

...

promote

...

equity

...

of

...

access

...

to

...

those

...

resources

...

across

...

our

...

user

...

community.

...

This

...

page

...

is

...

designed

...

to

...

help

...

users

...

get

...

started

...

with

...

this

...

system.

...

How

...

it

...

works

...

for

...

users

...

Users

...

should

...

edit

...

their

...

shell

...

scripts

...

to

...

add

...

special

...

directives

...

to

...

the

...

queue

...

system,

...

beginning

...

with

...

"#PBS",

...

that

...

request

...

resources,

...

declare

...

a

...

required

...

walltime,

...

and

...

direct

...

standard

...

output

...

and

...

error.

...

Users

...

can

...

then

...

"submit"

...

their

...

job

...

using

...

commands

...

like

...

"qsub,"

...

as

...

described

...

in

...

the

...

next

...

section

...

.

...

Advanced

...

details

...

can

...

be

...

found

...

in

...

Section

...

2.1

...

of

...

the

...

Torque

...

user

...

manual.

...

A

...

simple

...

example

...

of

...

such

...

a

...

script

...

can

...

be

...

found

...

in

...

the

...

attached apoa.sh

...

,

...

which

...

runs

...

the

...

ApoA1

...

benchmark

...

.

...

Other

...

examples

...

have

...

been

...

posted

...

on

...

the

...

Script

...

Library

...

page,

...

including

...

an

...

example

...

documenting

...

how

...

to

...

submit

...

multiple

...

similar

...

jobs,

...

using

...

Torque's

...

JobID

...

Array

...

functionality.

...

A

...

job

...

name

...

is

...

assigned

...

with

...

a

...

"#PBS

...

-N"

...

statement,

...

the

...

destination

...

queue

...

is

...

specified

...

using

...

a

...

"#PBS

...

-q"

...

statement:

{
Code Block
}
#PBS -N solution_equilibration_273K
{
Code Block
code}
{code}
#PBS -q short
{code}

The

...

standard

...

output

...

and

...

standard

...

error

...

can

...

be

...

directed

...

to

...

files

...

using

...

the

...

"#PBS

...

-o"

...

or

...

"#PBS

...

-e"

...

directives.

...

These

...

two

...

streams

...

can

...

be

...

joined

...

using

...

a

...

"#PBS

...

-j

...

oe"

...

directive.

{
Code Block
}
#PBS -e solution_equil.err
#PBS -o solution_equil.log
{code}

Users

...

can

...

request

...

resources

...

using

...

a

...

"#PBS

...

-l"

...

statement.

...

Resources

...

include

...

the

...

walltime

...

(in

...

mm:ss

...

or

...

hh:mm:ss

...

format)

...

and

...

the

...

number

...

of

...

nodes

...

and

...

number

...

of

...

processors

...

per

...

node.

...

In

...

the

...

example

...

below,

...

several

...

alternative

...

examples

...

of

...

node

...

requests

...

are

...

given

...

to

...

illustrate

...

the

...

possible

...

syntax;

...

only

...

one

...

would

...

be

...

included

...

in

...

an

...

actual

...

script.

{
Code Block
}
#PBS -l walltime=14:30:00
{
Code Block
}
{code}
#PBS -l nodes=1:ppn=4:group0
     OR
#PBS -l nodes=1:ppn=8:group0
     OR
#PBS -l nodes=n024:ppn=8
     OR
#PBS -l nodes=1:ppn=8+nodes=1:ppn=4
     OR
#PBS -l nodes=n024:ppn=8+nodes=1:ppn=8
     OR
#PBS -l nodes=1:ppn=8:mem16
{code}

Multiple

...

job

...

submission

...

through

...

job

...

arrays

...

is

...

available

...

on

...

Cyrus1,

...

but

...

not

...

Quantum2

...

(which

...

has

...

an

...

earlier

...

version

...

of

...

Torque.

...

This

...

feature

...

can

...

be

...

especially

...

helpful

...

to

...

users

...

who

...

need

...

to

...

submit

...

a

...

large

...

number

...

of

...

similar

...

jobs.

...

For

...

more

...

details,

...

see

...

section

...

2.1.1

...

of

...

the

...

Torque

...

user

...

manual.

Some or all of these arguments can also be given at the command line. Command-line settings override any settings in the script.

Code Block
|http://www.clusterresources.com/torquedocs21/2.1jobsubmission.shtml].

Some or all of these arguments can also be given at the command line. Command-line settings override any settings in the script.
{code}
[bashprompt]$ qsub -q short -l walltime=5:00:00 -l nodes=2:ppn=8 -e test_stderr.txt  ./test_simulation.sh
{code}

Some

...

notes

...

and

...

suggestions

...

for

...

users:

...

  1. Users

...

  1. should

...

  1. request

...

  1. the

...

  1. lowest

...

  1. possible

...

  1. walltime

...

  1. for

...

  1. their

...

  1. jobs,

...

  1. since

...

  1. the

...

  1. queue

...

  1. system

...

  1. will

...

  1. need

...

  1. to

...

  1. "block

...

  1. out"

...

  1. the

...

  1. entire

...

  1. 24-hour

...

  1. period

...

  1. when

...

  1. no

...

  1. walltime

...

  1. is

...

  1. specified.

...

  1. This

...

  1. is

...

  1. analogous

...

  1. to

...

  1. a

...

  1. customer

...

  1. arriving

...

  1. at

...

  1. a

...

  1. busy

...

  1. barbershop

...

  1. and

...

  1. explaining

...

  1. that

...

  1. he

...

  1. only

...

  1. needs

...

  1. a

...

  1. "very

...

  1. quick

...

  1. trim."

...

  1. If

...

  1. users

...

  1. do

...

  1. not

...

  1. specify

...

  1. a

...

  1. queue

...

  1. in

...

  1. their

...

  1. script,

...

  1. the

...

  1. "default"

...

  1. queue

...

  1. is

...

  1. used.

...

  1. This

...

  1. queue

...

  1. has

...

  1. a

...

  1. walltime

...

  1. limit

...

  1. of

...

  1. 24

...

  1. hours,

...

  1. a

...

  1. node

...

  1. count

...

  1. limit

...

  1. of

...

  1. 1,

...

  1. and

...

  1. a

...

  1. default

...

  1. priority

...

  1. of

...

  1. 60;

...

  1. in

...

  1. other

...

  1. words,

...

  1. it

...

  1. is

...

  1. less

...

  1. desirable

...

  1. than

...

  1. any

...

  1. of

...

  1. the

...

  1. queues

...

  1. listed

...

  1. in

...

  1. the

...

  1. tables

...

  1. below

...

  1. .

...

  1. Specifying

...

  1. a

...

  1. queue

...

  1. with

...

  1. the

...

  1. "#PBS

...

  1. -q"

...

  1. option

...

  1. is

...

  1. a

...

  1. good

...

  1. idea.

...

  1. Short

...

  1. "analysis

...

  1. scripts"

...

  1. are

...

  1. not

...

  1. exempt

...

  1. from

...

  1. the

...

  1. queuing

...

  1. system.

...

  1. If

...

  1. your

...

  1. script

...

  1. runs

...

  1. anything

...

  1. other

...

  1. than

...

  1. Linux

...

  1. utilities

...

  1. (e.g.

...

  1. VMD,

...

  1. CHARMM,

...

  1. custom

...

  1. C

...

  1. code

...

  1. for

...

  1. MD

...

  1. analysis),

...

  1. it

...

  1. belongs

...

  1. in

...

  1. the

...

  1. queue

...

  1. system.

...

  1. Just

...

  1. add

...

  1. a

...

  1. few

...

  1. lines

...

  1. as

...

  1. discussed

...

  1. in

...

  1. the

...

  1. section

...

  1. above.

...

  1. Input

...

  1. and

...

  1. output

...

  1. to

...

  1. files

...

  1. do

...

  1. not

...

  1. seem

...

  1. to

...

  1. be

...

  1. as

...

  1. immediate

...

  1. as

...

  1. when

...

  1. running

...

  1. directly

...

  1. from

...

  1. the

...

  1. command

...

  1. line.

...

  1. Users

...

  1. should

...

  1. not

...

  1. count

...

  1. on

...

  1. immediate

...

  1. access

...

  1. to

...

  1. program

...

  1. output.

...

  1. Users

...

  1. should

...

  1. test

...

  1. system

...

  1. scaling

...

  1. before

...

  1. expanding

...

  1. beyond

...

  1. one

...

  1. node;

...

  1. for

...

  1. systems

...

  1. of

...

  1. 10

...

  1. to

...

  1. 20

...

  1. katoms,

...

  1. poor

...

  1. scaling

...

  1. has

...

  1. been

...

  1. observed

...

  1. beyond

...

  1. 8

...

  1. ppn,

...

  1. while

...

  1. the

...

  1. 92

...

  1. katom

...

  1. ApoA1

...

  1. benchmark

...

  1. case

...

  1. scales

...

  1. well

...

  1. to

...

  1. 2

...

  1. nodes

...

  1. (and

...

  1. possibly

...

  1. beyond).

...

Anchor
command_table
command_table

...

Managing jobs in the queuing system, and the approach used by Torque

The following commands can be used to submit and manage jobs:

command

purpose

qsub jobscript

Submit job in script jobscript. Can accept other arguments as discussed above.

qsub -I -l nodes=1:ppn=4

...

Request

...

interactive

...

job

...

with

...

indicated

...

resources.

...

qdel jobID

Delete job number jobID. Seems to kill processes on compute nodes cleanly.

showq

list jobs by state, with scheduling details.

showbf

list "backfill," or number of processors available at the moment.

qstat

List active jobs. Use "-i" for a different format.

qstat -q

List queue attributes for all queues.

qstat -f jobID

List detailed information for job number jobID.

qnodes

List all nodes and their state and properties.

qnodes -l down

List those nodes currently down.

qnodes -l active or qnodes -l active

List nodes currently used for jobs.

qnodes -l free

List nodes currently free.

qmgr -c "print server"

Print queue configuration details

administrative command

purpose

pbsnodes -o nodename

Take node offline after allowing current job to finish.

pbsnodes -r nodename

Check node and then return to free status if possible.

checkjob jobid

Check status of job.

releasehold -a jobid

Release holds on job.

qrun jobid

Force job to execute now.

showstats

Show usage statistics.

showgrid statistic_name

Print a text table of statistic_name by time.

The PBS queue system allocates a set of nodes and processors to an individual job, either for the walltime specified in the job or the maximum walltime in the queue. It then provides a set of environmental variables to the shell in which the script runs, such as PBS_NODEFILE, the temporary node file describing allocated CPUs. When running with OpenMPI's mpiexec, the submitted script seems to just launch processes without needing that nodefile specified as an argument to mpiexec, although it's not clear whether that behavior is a feature or a bug.

Additional information for queue administrators on PBS and Maui can be found on a helpful page maintained by the University of Cambridge's Theoretical Chemistry department.

Anchor
queue_tables
queue_tables

Table of queues attributes

The following tables were updated on June 11th to reflect changes made on that date. Note that a dash ("--") indicates no limit for the given queue.

Queue attributes on Cyrus1

 

debug

short

long

max walltime

20 min

24 hr

5 days

max nodes per job

1

5

1

max nodes per queue

10

max jobs running per user

5

max jobs queuable per user

-

priority

100

80

60

Queue attributes on Darius1, Darius2, Xerxes and Artaxerxes

 

debug

short

long

verylong

max walltime

20 min

24 hr

5 days

14 days

max nodes per job

1

32

4

4

max nodes per queue

15

5

max jobs running per user

15

5

priority

100

80

60

40