preserve - Reserve nodes to run applications in parallel

SYNOPSIS

preserve [option] time

DESCRIPTION

preserve is part of a reservation system, which users generally invoke via prun(1). There are two situations where users directly call preserve: to cancel reservations, and to reserve nodes for multiple runs where an identical set of nodes is needed. The user then passes the reservation id obtained with preserve to prun(1) with the -reserve id flag.
preserve/prun are mostly based on goodwill and cooperation: hardly anything is enforced and it is easy to pass it by. However, if you do that, you will incur the wrath and pity of your fellow users and yourself, since you will inevitably suffer collisions....
preserve reserves a number of cpus or nodes during the requested time (in seconds). If the execution time exceeds 15 minutes on <= 32 cpus or 3 minutes on > 32 cpus, and the -asocial flag is not specified, the reservation is allocated outside office hours.
Otherwise, the reservation is allocated as soon as the requested number of processors is available.
If cpus are requested (in stead of nodes), preserve by default rounds the requested number of cpus upwards to a multiple of the number of cpus per node: 1 for DAS-1, 2 for DAS-2. This ensures that there are no other processes on the reserved nodes that might interfere.

OPTIONS

-asocial
Override office hours execution time limit. With prun on top of PBS (as in DAS-2), this option is default.
-c id
cancel reservation id id. All reservations by the caller are canceled if id is all or -. preserve attempts to kill all processes on the nodes that correspond to the reservation.
-e list
reserve nodes on list, a (possibly quoted) text string that contains the host names. An abbreviation mechanism is supported: if a hostname ends in a number, a range of nodes starting at that hostname and numbering upwards is specified by appending ":<n>" to the hostname, where <n> is the range size. The order of nodes in the list is respected.
-f file
nodes on file. The order of nodes in the file is respected.
-h pool, -p pool
host pool on file pool (default: see below). Hosts are selected arbitrarily from the pool. With prun on top of PBS (as in DAS-2), the first nhosts are selected from the pool.
-list
list current reservations, terse output.
-llist, -long-list
list current reservations, more verbose output.
-q queue
Enter the reservation into the PBS queue named queue. If -list or -long-list is also specified, print only the jobs in queue queue.
-s time
start reservation at time [[mm-]dd-]hh:mm. Month and day are optional, hour and minute mandatory. Default: now.
-t time
reserve time = [[hh:]mm:]ss hours, minutes seconds.
-x list
skip nodes on list, a (possibly quoted) text string that contains the host names. An abbreviation mechanism is supported: if a hostname ends in a number, a range of nodes starting at that hostname and numbering upwards is specified by appending ":<n>" to the hostname, where <n> is the range size. With preserve on top of PBS (as in DAS-2), this option is not supported.
-update
clean up reserve file wrt past reservations.
-# cpus
reserve cpus cpus. Default: the number of cpus derived from the -e, -f, -h, or -p option, multiplied by the number of cpus per node (1 for DAS-1, 2 for DAS-2). If none of these options are specified, default is the complete current pool, or undefined with prun on top of PBS (as in DAS-2).
-1
The default for -#cpus is to schedules cpus. If -1 is specified, preserve allocates nodes.
-2
The default for -#cpus is to schedules cpus. If -1 is specified, preserve allocates nodes. This is a compatibility option for prun(1): its behavior is the same as -1.
-?
print usage

SEE ALSO

prun(1), prkill(1)

FILES

RESERVE_PATH
the directory containing all reserve files. On DAS-1 and DAS-2, RESERVE_PATH is /usr/local/sitedep/reserve.
RESERVE_PATH/reserved
the file containing the reservations
RESERVE_PATH/lock
lock file. This file must be removed by hand if prun crashes inside a critical section.
RESERVE_PATH/unreservable
the definition of office hours.
RESERVE_PATH/pool
the default processor pool.
$HOME/.prunpool
user's default pool, to override the .BR prun (1) default pool.


Markup created by unroff 1.0,    September 14, 2004.