.\" Copyright (C) 1994-2018 Altair Engineering, Inc. .\" For more information, contact Altair at www.altair.com. .\" .\" This file is part of the PBS Professional ("PBS Pro") software. .\" .\" Open Source License Information: .\" .\" PBS Pro is free software. You can redistribute it and/or modify it under the .\" terms of the GNU Affero General Public License as published by the Free .\" Software Foundation, either version 3 of the License, or (at your option) any .\" later version. .\" .\" PBS Pro is distributed in the hope that it will be useful, but WITHOUT ANY .\" WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS .\" FOR A PARTICULAR PURPOSE. .\" See the GNU Affero General Public License for more details. .\" .\" You should have received a copy of the GNU Affero General Public License .\" along with this program. If not, see . .\" .\" Commercial License Information: .\" .\" For a copy of the commercial license terms and conditions, .\" go to: (http://www.pbspro.com/UserArea/agreement.html) .\" or contact the Altair Legal Department. .\" .\" Altair’s dual-license business model allows companies, individuals, and .\" organizations to create proprietary derivative works of PBS Pro and .\" distribute them - whether embedded or bundled with other software - .\" under a commercial license agreement. .\" .\" Use of Altair’s trademarks, including but not limited to "PBS™", .\" "PBS Professional®", and "PBS Pro™" and Altair’s logos is subject to Altair's .\" trademark licensing policies. .\" .TH pbs_rsub 1B "19 February 2018" Local "PBS Professional" .SH NAME .B pbs_rsub \- create a PBS advance or standing reservation .SH SYNOPSIS .B pbs_rsub [-D ] [-E ] [-g ] .RS 9 [-G ] [-H ] [-I ] [-m ] [-M ] [-N ] [-q ] [-r ] [-R ] [-u ] [-U ] [-W ] -l [-l ] .RE .B pbs_rsub --version .SH DESCRIPTION The .B pbs_rsub command is used to create an advance or standing reservation. An advance reservation reserves specific resources for the requested time period, and a standing reservation reserves specific resources for recurring time periods. When a reservation is created, it has an associated queue. After the reservation is requested, it is either confirmed or denied. Once the reservation has been confirmed, authorized users submit jobs to the reservation's queue via .B qsub and .B qmove. A confirmed reservation will accept jobs at any time. The jobs in its queue can run only during the reservation period, whether during a single advance reservation or during the occurrences of a standing reservation. When an advance reservation ends, all of its jobs are deleted, whether running or queued. When an occurrence of a standing reservation ends, only its running jobs are deleted; those jobs still in the queue are not deleted. To get information about a reservation, use the .B pbs_rstat command. To delete a reservation, use the .B pbs_rdel command. Do not use the .B qdel command. The behavior of the .B pbs_rsub command may be affected by any site hooks. Site hooks can modify the reservation's attributes. .SH REQUIREMENTS When using .B pbs_rsub to request a reservation, you must specify two of the following options: .I -R, -E, and .I -D. The resource request .I -l walltime can be used instead of the .I -D option. If you want to run jobs in a reservation that will request exclusive placement, you must create the reservation with exclusive placement via -l place=excl. .SH OPTIONS .IP "-D " 8 Specifies reservation duration. If the start time and end time are the only times specified, this duration time is calculated. .br Format: .I Duration. See .B FORMATS. .br Default: none .RE .IP "-E " 8 Specifies the reservation end time. If start time and duration are the only times specified, the end time value is calculated. .br Format: .I Datetime. See .B FORMATS. .br Default: none. .RE .IP "-g " 8 The .I group list is a comma-separated list of group names. The server uses entries in this list, along with an ordered set of rules, to associate a group name with the reservation. The reservation creator's primary group is automatically added to this list. .br Format: @[,@ ...] .RE .IP "-G " 8 Comma-separated list of names of groups who can or cannot submit jobs to this reservation. Group names are interpreted in the context of the server's host, not the context of the host from which the job is submitted. .br This list becomes the .I acl_groups list for the reservation's queue. More specific entries should be listed before more general, because the list is read left-to-right, and the first match determines access. .br If both the .I Authorized_Users and .I Authorized_Groups reservation attributes are set, a user must belong to both in order to be able to submit jobs to this reservation. If the reservation creator specifies this list, the creator's group is not automatically added to the list. .br Refer to the .I Authorized_Groups reservation attribute in the pbs_resv_attributes(7B) man page. .br Format: [+|-][,[+|-] ...] .br Default: All groups are authorized to submit jobs. .RE .IP "-H " 8 Comma-separated list of hosts from which jobs can and cannot be submitted to this reservation. This list becomes the .I acl_hosts list for the reservation's queue. .br More specific entries should be listed before more general, because the list is read left-to-right, and the first match determines access. If the reservation creator specifies this list, the creator's host is not automatically added to the list. .br See the .I Authorized_Hosts reservation attribute in the pbs_resv_attributes(7B) man page. .br Format: [+|-][,[+|-] ...] .br Default: All hosts are authorized to submit jobs .RE .IP "-I " 8 Specifies interactive mode. The .B pbs_rsub command will block, up to .I block time seconds, while waiting for the reservation request to be confirmed or denied. .br If .I block time is positive, and the reservation isn't confirmed or denied in the specified time, the ID string for the reservation is returned with the status "UNCONFIRMED". .br If .I block time is negative, and a scheduler doesn't confirm or deny the reservation in the specified time, the reservation is deleted. .br Format: Integer. .br Default: Not interactive .RE .IP "-l " 8 The .I placement specifies how vnodes are reserved. The .I place statement can contain the following elements, in any order: .IP " " 11 -l place=[ .I ][: .I ][: .I ] .LP .IP " " 8 where .IP " " 11 .RS .IP arrangement 3 Whether this reservation chunk is willing to share this vnode or host with other chunks from this reservation. One of .I free | .I pack | .I scatter | .I vscatter .IP sharing 3 Whether this reservation chunk is willing to share this vnode or host with other reservations or jobs. One of .I excl | .I share | .I exclhost .IP grouping 3 Whether the chunks from this reservation should be placed on vnodes that all have the smae value for a resource. Can have only one instance of .I group=resource .LP .LP .RE .LP .IP " " 8 and where .IP " " 11 .RS .IP free 3 Place reservation on any vnode(s). .IP pack All chunks are taken from one host. .IP scatter 3 Only one chunk with any MPI processes is taken from a host. A chunk with no MPI processes may be taken from the same vnode as another chunk. .IP vscatter 3 Only one chunk is taken from any vnode. Each chunk must fit on a vnode. .IP excl 3 Only this reservation uses the vnodes chosen. .IP exclhost 3 The entire host is allocated to the reservation. .IP shared 3 This reservation can share the vnodes chosen. .IP group= 3 Chunks are grouped according to a .I resource. All vnodes in the group must have a common value for .I resource, which can be either the built-in resource .I host or a custom vnode-level resource. .br .I resource must be a string or a string array. .LP .LP .RE .LP .IP " " 8 If you want to run jobs in the reservation that will request exclusive placement, you must create the reservation with exclusive placement via .B -l place=excl. The place statement cannot begin with a colon. Colons are delimiters; use them only to separate parts of a place statement, unless they are quoted inside resource values. Note that nodes can have sharing attributes that override job placement requests. See the .B pbs_node_attributes(7B) man page. .LP .IP " " 8 For more on reservations, see .B The PBS Professional User's Guide. .RE .IP "-l resource request" 8 The .I resource request specifies the resources required for the reservation. These resources are used for the limits on the queue that is dynamically created for the reservation. The aggregate amount of resources for currently running jobs from this queue will not exceed these resource limits. Jobs in the queue that request more of a resource than the queue limit for that resource are not allowed to run. Also, the queue inherits the value of any resource limit set on the server, and these are used for the job if the reservation request itself is silent about that resource. A non-privileged user cannot submit a reservation requesting a custom resource which has been created to be invisible or read-only for users. Resources are requested by using the .I -l option, either in .I chunks inside of .I selection statements, or in job-wide requests using .I = pairs. Requesting resources in chunks: .RS .IP " " 3 .I -l select=[N:][+[N:] ...] .LP where .I N specifies how many of that chunk, and a .I chunk is of the form: .IP " " 3 .I =[:= ...] .LP Requesting job-wide resources: .IP " " 3 .I -l =[,= ...] .LP .RE .IP "-m " 8 Specifies the set of events that cause mail to be sent to the list of users specified in the .I -M mail list option. .br Format: string consisting of one of the following: .RS 1) any combination of "a", "b", "c" or "e" .br 2) the single character "n" .IP a Notify if the reservation is terminated for whatever reason .IP b Notify when the reservation period begins .IP c Notify when the reservation is confirmed .IP e Notify when the reservation period ends .IP n Send no mail. Cannot be used with any of .I a, b, c or .I e. .LP Default: .I ac .RE .IP "-M " 8 The list of users to whom mail is sent whenever the reservation transitions to one of the states specified in the .I -m mail events option. .br Format: [@][,[@]...] .br Default: reservation owner. .RE .IP "-N " 8 Specifies a name for the reservation. .br Format: .I Reservation name. See .B FORMATS. .br Default: None. .RE .IP "-q " 8 Specifies the destination server at which to create the reservation. .br Default: The default server is used if this option is not selected. .RE .IP "-r " 8 Specifies rule for recurrence of standing reservations. Rule must conform to iCalendar syntax, and is specified using a subset of parameters from RFC 2445. .br Valid syntax for .I recurrence rule takes one of two forms: .RS 11 .I FREQ=;COUNT=; .RE .IP " " 8 or .RS 11 .I FREQ=;UNTIL=; .RE .IP " " 8 where .RS 11 .IP "freq spec" 5 Frequency with which the standing reservation repeats. Valid values are: .br WEEKLY|DAILY|HOURLY .IP "count spec" 5 The exact number of occurrences. Number up to 4 digits in length. Format: integer. .IP "interval spec" 5 Specifies interval. Format is one or both of: .br BYDAY = MO|TU|WE|TH|FR|SA|SU .br or .br BYHOUR = 0|1|2|...|23 .br When using both, separate them with a semicolon. .br Elements specified in the recurrence rule override those specified in the arguments to the .I -R and .I -E options. For example, the .I BYHOUR specification overrides the hourly part of the .I -R option. For example, .br -R 0730 -E 0830 ... BYHOUR=9 .br results in a reservation that starts at 9:30 and runs for 1 hour. See the .B PBS Professional User's Guide. .IP "until spec" 5 Occurrences will start up to but not after date and time specified. .br Format: YYYYMMDD[THHMMSS] .br Note that the year-month-day section is separated from the hour-minute-second section by a capital T. .RE .IP " " 8 Requirements: .br The recurrence rule must be on one unbroken line and must be enclosed in double quotes. A start and end date must be used when specifying a recurrence rule. See the .I R and .I E options. The PBS_TZID environment variable must be set at the submission host. The format for PBS_TZID is a timezone location. Examples: America/Los_Angeles, America/Detroit, Europe/Berlin, Asia/Calcutta. See the .B PBS Professional User's Guide. .B Examples of Standing Reservations .br For a reservation that runs every day from 8am to 10am, for a total of 10 occurrences: .RS .IP " " 3 pbs_rsub -R 0800 -E 1000 -r "FREQ=DAILY;COUNT=10" .LP Every weekday from 6am to 6pm until December 10 2008 .IP " " 3 pbs_rsub -R 0600 -E 1800 .br -r "FREQ=WEEKLY; BYDAY=MO,TU,WE,TH,FR; UNTIL=20081210" .LP Every week from 3pm to 5pm on Monday, Wednesday, and Friday, for 9 occurrences, i.e., for three weeks: .RS 5 pbs_rsub -R 1500 -E 1700 .br -r "FREQ=WEEKLY;BYDAY=MO,WE,FR; COUNT=3" .RE .RE .IP "-R " 8 .RS .LP Specifies reservation starting time. If the reservation's end time and duration are the only times specified, this start time is calculated. If the day, .I DD , is not specified, it defaults to today if the time .I hhmm is in the future. Otherwise, the day is set to tomorrow. For example, if you submit a reservation with the specification .I "-R 1110" at 11:15 a.m., it is interpreted as being for 11:10am tomorrow. If the month portion, .I MM , is not specified, it defaults to the current month, provided that the specified day .I DD , is in the future. Otherwise, the month is set to next month. Similar rules apply to the two other optional, left-side components. .br Format: .I Datetime .LP .RE .IP "-u " 8 Not used. Comma-separated list of user names. .br Format: [@][,[@] ...] .br Default: None .RE .IP "-U " 8 Comma-separated list of users who are and are not allowed to submit jobs to this reservation. This list becomes the .I acl_users attribute for the reservation's queue. More specific entries should be listed before more general, because the list is read left-to-right, and the first match determines access. If both the .I Authorized_Users and .I Authorized_Groups reservation attributes are set, a user must belong to both in order to be able to submit jobs to this reservation. The reservation creator's username is automatically added to this list, whether or not the reservation creator specifies this list. Refer to the .I Authorized_Users reservation attribute on the pbs_resv_attributes man page. .br Format: .I [+|-]@[,[+|-]@...] .br Default: Job owner only .br .RE .IP "-W attribute value list" 8 This allows you to define other attributes for the reservation. Supported attributes: .RS .IP "qmove=" 5 Converts a normal job designated by .I job ID into a reservation job that will run as soon as possible. Creates the reservation with its queue and moves the job into the reservation's queue. Uses the resources requested by the job to create the reservation. When the reservation is created, it inherits its resources from the job, not from the resources requested through the .B pbs_rsub command. You can use the .I -I option to specify a timeout for the conversion. If you use the .B qmove option to convert a job to a reservation, and the reservation is not confirmed within the timeout period, the reservation is deleted. The default timeout period is .I 10 seconds. There is no option for this kind of reservation to be unconfirmed. To specify the timeout, you must give a negative value for the .I -I option. For example, to specify a timeout of 300 seconds: pbs_rsub -Wqmove= -I -300 The .I -R and .I -E options to .B pbs_rsub are disabled when using the .I qmove= attribute. Some shells require that you enclose a job array ID in double quotes. .RE .IP "--version" 8 The .B pbs_rsub command returns its PBS version information and exits. This option can only be used alone. .SH OUTPUT The .B pbs_rsub command returns the reservation identifier. .br For an advance reservation, this has the form .IP .I R. .LP where .I NNNN is a unique integer. The associated queue's name is the prefix, .I R. For a standing reservation, this has the form .IP .I S. .LP where .I NNNN is a unique integer. The associated queue's name is the prefix, .I S. .SH FORMATS .IP "Datetime format" .I "[[[[CC]YY]MM]DD]hhmm[.SS]" .IP "Reservation name" String up to 236 characters in length. It must consist of printable, non-white space characters with the first character alphabetic. The first character must be alphabetic, numeric, plus sign, dash or minus, or underscor. The name must not contain special characters. .SH SEE ALSO The .B PBS Professional User's Guide, the .B PBS Professional Administrator's Guide, .br pbs_resv_attributes(7B), pbs_rdel(1B), pbs_rstat(1B), qmove(1B), qsub(1B)