| % |
| % Licensed to the Apache Software Foundation (ASF) under one |
| % or more contributor license agreements. See the NOTICE file |
| % distributed with this work for additional information |
| % regarding copyright ownership. The ASF licenses this file |
| % to you under the Apache License, Version 2.0 (the |
| % "License"); you may not use this file except in compliance |
| % with the License. You may obtain a copy of the License at |
| % |
| % http://www.apache.org/licenses/LICENSE-2.0 |
| % |
| % Unless required by applicable law or agreed to in writing, |
| % software distributed under the License is distributed on an |
| % "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| % KIND, either express or implied. See the License for the |
| % specific language governing permissions and limitations |
| % under the License. |
| % |
| % Create well-known link to this spot for HTML version |
| \ifpdf |
| \else |
| \HCode{<a name='DUCC_CLI_RESERVE'></a>} |
| \fi |
| \section{ducc\_reserve} |
| |
| \paragraph{Description:} |
| The reserve CLI is used to request a reservation of resources. Reservations can be for machines |
| based on memory requirements. All reservations are persistent: |
| the resources remain dedicated to the requester until explicitly returned. All reservations are |
| performed on an "all-or-nothing" basis: either the entire set of requested resources is reserved, |
| or the reservation request fails. |
| |
| All forms of ducc\_reserve block until the reservation is complete (or fails) at which point the DUCC |
| ID of the reservation and the names of the reserved nodes are printed to the console and the |
| command returns. |
| |
| \paragraph{Usage:} |
| \begin{description} |
| \item[Script wrapper] \ducchome/bin/ducc\_reserve {\em options} |
| \item[Java Main] java -cp \ducchome/lib/uima-ducc-cli.jar org.apache.uima.ducc.cli.DuccReservationSubmit {\em options} |
| \end{description} |
| |
| \paragraph{Options:} |
| |
| \begin{description} |
| |
| \item[$--$cancel\_on\_interrupt] If specified, the request is monitored |
| and will be canceled if the reserve command is interrupted, e.g. with CTRL-C. |
| This option always implies $--$wait\_for\_completion. |
| |
| \item[$--$debug ] |
| Prints internal debugging information, intended for DUCC developers or extended problem determination. |
| |
| \item[$--$description {[text]}] |
| The text is any string used to describe the reservation. It is displayed in the Web Server. |
| |
| \item[$--$help ] |
| Prints the usage text to the console. |
| |
| \item[$--$memory\_size {[integer]}] |
| This specifies the amount of memory the reserved machine must support. After rounding |
| up it must match the total usable memory on the machine. (Required) |
| |
| Alias: $--$instance\_memory\_size |
| |
| \item[$--$scheduling\_class {[classname]}] |
| This specifies the name of the scheduling class used to determine the resource |
| allocation for each process. It must be one implementing the RESERVE policy. |
| If not specified, the RESERVE default is taken from the site class definitions file |
| described \hyperref[subsubsec:class.configuration]{here.} |
| |
| \item[$-$f, $--$specification {[file]}] |
| All the parameters used to request a reservation may be placed in a standard Java |
| properties file. This file may then be used to submit the request (rather than providing all |
| the parameters directory to submit). |
| |
| \item[$--$timestamp ] |
| If specified, messages from the submit process are timestamped. This is intended primarily |
| for use with a monitor with --wait\_for\_completion. |
| |
| \item[$--$wait\_for\_completion ] |
| By default, the reserve command monitors the request and prints periodic |
| state and progress information to the console. When the reservation completes, the monitor |
| is terminated and the reserve command returns. If the command is interrupted, e.g. with CTRL-C, |
| the request will not be canceled unless $--$cancel\_on\_interrupt is also specified. |
| If this option is disabled by specifying a value of ``false'', the command returns as |
| soon as the request has been submitted. |
| |
| |
| \end{description} |
| |
| \paragraph{Notes:} |
| Reservations must be for entire machines, in a job class implementing the RESERVE scheduling |
| policy. The default DUCC distribution configures class {\em reserve} for entire machine |
| reservations. If there is no available machine in that class matching the requested size (after |
| rounding up) the request is queued. The user may cancel the request with {\em ducc\_unreserve} |
| or with CTRL-C if $--$cancel\_on\_interrupt was specified. |