The Distributed ASCI Supercomputer 3

preserve - Reserve compute nodes from cluster to run job


preserve [option] -# ncpus time


preserve is part of a reservation system, which users generally invoke via prun(1). There are several situations where users directly call preserve:
  • to reserve nodes for multiple sequential runs with prun(1), where an identical set of nodes is needed (using "prun -reserve id", where id was obtained from preserve);
  • to reserve nodes before starting an application with a different startup method than offered by prun;
  • to display the current set of node reservations;
  • to cancel a reservation.

preserve and prun build on a reservation system that is partly based on goodwill: compute node reservation is implemented, but generally not strictly enforced. However, users sidestepping the reservation mechanism and accessing compute nodes directly will incur the wrath of both fellow users and the system administrators.
preserve reserves a number of cpus or nodes during the requested time (in seconds), by default 900 seconds (15 minutes), which is also the maximum allowed reservation during daytime. If no start time is specified explicitly, the reservation is allocated as soon as the requested number of processors is available. The users are themselves responsible to honor the required execution limits, or request an exception by email to the system administrators.
If cpus are requested (instead of nodes), preserve by default rounds the requested number of cpus upwards to a multiple of the number of cpus per node, i.e., 2 for DAS-2 and DAS-3. This ensures that there are no other jobs on the reserved nodes (from the same or another user) that might interfere.


-c id
cancel reservation id id. preserve attempts to kill all processes on the nodes that correspond to the reservation.
list current reservations, terse output.
-llist, -long-list
list current reservations, more verbose output.
-q queue
Enter the reservation into the SGE queue named queue. The default is the system-default queue; typically this is the queue containing all available nodes.
For preserve running on SGE (as on DAS-2 and DAS-3), this option can be used to enforce scheduling on a specific subset of nodes. E.g., using the following:
-q "all.q@node001,all.q@node002".
-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.
-# cpus
reserve cpus cpus. Note: there is no default; this option must be present.
By default, preserve reserves the requested amount of cpus, i.e., on DAS-2 and DAS-3 this is based on 2 cpus per node. If -[124] is specified, however, preserve allocates the specified number of nodes, in anticipation of a prun invocation running the same number of processes per node specified by this option (irrespective of the actual number of cpus per node).
print usage