'\" t e .\"___INFO__MARK_BEGIN__ .\" .\" Copyright: 2004-2007 by Sun Microsystems, Inc. .\" Copyright 2013 Dave Love, Liverpool University .\" .\"___INFO__MARK_END__ .\" .\" .\" Some handy macro definitions [from Tom Christensen's man(1) manual page]. .\" .de SB \" small and bold .if !"\\$1"" \\s-2\\fB\&\\$1\\s0\\fR\\$2 \\$3 \\$4 \\$5 .. .\" " .de T \" switch to typewriter font .ft CW \" probably want CW if you don't have TA font .. .\" .de TY \" put $1 in typewriter font .if t .T .if n ``\c \\$1\c .if t .ft P .if n \&''\c \\$2 .. .\" .de M \" man page reference \\fI\\$1\\fR\\|(\\$2)\\$3 .. .de MO \" other man page reference \\fI\\$1\\fR\\|(\\$2)\\$3 .. .\" Fixme: check for missing definitions .TH SGE_TYPES 5 2011-06-22 "SGE 8.1.3pre" "Grid Engine User Commands" .\" .SH NAME sge_types \- Grid Engine type descriptions .\" .SH DESCRIPTION .\" The Grid Engine user interface consists of several programs and files. Some command-line switches and several file attributes are types. The syntax for these types is explained in this page. .PP .\" .\" expression => a regular boolean expression .\" pattern => a pattern definition .\" qdomain => wc_qdomain without expression .\" qinstance => wc_qinstance without expression .\" range := n[-m[:s]][,n[-m[:s]],...] .\" wc_ar := ar_id|ar_name|pattern .\" wc_ar_list := wc_ar[,wc_ar,...] .\" wc_host := wildcard expression matching a host .\" wc_hostgroup := wildcard expression matching a hostgroup .\" wc_job := job-id|job_name|pattern .\" wc_job_range := wc_job[ -t range] .\" wc_job_list := wc_job[,wc_job,...] .\" wc_job_range_list := wc_job_range[,wc_job_range,...] .\" wc_qdomain := wc_cqueue@wc_hostgroup .\" wc_qinstance := wc_cqueue@wc_host .\" wc_queue := wc_cqueue|wc_qdomain|wc_qinstance .\" wc_queue_list := wc_queue[,wc_queue,...] .\" wc_user := user_name|pattern .\" wc_user_list := wc_user[,wc_user,...] .\" wc_project := project|pattern .\" wc_pe_name := pe_name|pattern .\" parallel_env := wc_pe_name \fBn\fP[\fB-\fP[\fBm\fP]]|[\fB-\fP]\fBm\fP,...\fP .\" date_time := [[CC]]YY]MMDDhhmm[.SS] .\" time := hh:mm:ss|seconds .\" name := ASCII alphanumeric string .\" .SH "OBJECT TYPES" These types are used for defining Grid Engine configuration: .\" .SS "\fBobject_name\fP" An object name is a sequence of up to 512 ASCII printing characters except SPACE, "/", ":", "\'", "\\", "[", "]", "{", "}", "|", "(", ")", "@", "%", "," or the '"' character itself. \" " .\" .SS "\fBcalendar_name\fP" A calendar name is the name of a Grid Engine calendar described in .M calendar_conf 5 . .nf \fIcalendar_name\fP := \fIobject_name\fP .fi .\" .SS "\fBckpt_name\fP" A "ckpt_name" is the name of a Grid Engine checkpointing interface described in .M checkpoint 5 . .nf \fIckpt_name\fP := \fIobject_name\fP .fi .\" .SS "\fBcomplex_name\fP" A complex name is the name of a Grid Engine resource attribute described in .M complex 5 . .nf \fIcomplex_name\fP := \fIobject_name\fP .fi .\" .SS "\fBhost_identifier\fP" A host identifier can be either a host name or a host group name. .nf \fIhost_identifier\fP := \fIhost_name\fP | \fIhostgroup_name\fP .fi .\" .SS "\fBhostgroup_name\fP" A host group name is the name of a Grid Engine host group described in .M hostgroup 5 . Note, to allow host group names to be distinguished easily from host names, a "@" prefix is used. .nf \fIhostgroup_name\fP := @\fIobject_name\fP .fi .\" .SS "\fBhost_name\fP" A host name is the official name of a host node. Host names with a domain specification such as "gridmaster.sun.com" are called fully-qualified host names, whereas host names like "gridmaster" are called short host names. Note that the install time parameters \fBdefault_domain\fP and \fBignore_fqdn\fP (see .M bootstrap 5 ) affect how Grid Engine deals with host names in general. .PP The following host names are generally invalid or reserved: .\" fixme: list is from old doc, but can't see where "all" & .\" "default" are excluded .BR global ,\ template ,\ all ,\ default ,\ unknown ,\ none . However, it may sometimes be useful to define a dummy host name of .B global for convenient use of .M qhost 1 . .fi .SS "\fBjsv_url\fP" The \fBjsv_url\fP has following format: .PP \fIjsv_url\fP := \fIjsv_client_url\fP | \fIjsv_server_url\fP .PP \fIjsv_server_url\fP := [ \fItype\fP '\fB:\fP' ] [ \fIuser\fP '\fB@\fP' ] \fIpath\fP .PP \fIjsv_client_url\fP := [ \fItype\fP '\fB:\fP' ] \fIpath\fP .PP \fItype\fP := '\fBscript\fP' .PP At the moment only the \fItype\fP \fBscript\fP is allowed. This means that \fIpath\fP is either the path to a script or to a binary application which will be used to instantiate a JSV process. The \fItype\fP is optional until other \fItypes\fP are supported by Grid Engine. .PP Specifying a \fIuser\fP is only allowed for server JSVs. Client JSVs will automatically be started as the submit user, and server JSVs as the admin user if not otherwise specified. .PP The \fIpath\fP has always to be the absolute path to a binary or application. .PP .\" .\" .SS "\fBmemory_specifier\fP" Memory specifiers are positive decimal, hexadecimal or octal integer constants which may be followed by a multiplier letter. Valid multiplier letters are .BR k ,\ K ,\ m ,\ M ,\ g ,\ G ,\ t , and .BR T , where \fBk\fP means multiply the value by 1000, \fBK\fP multiply by 1024, \fBm\fP multiply by 1000\(mu1000, \fBM\fP multiply by 1024\(mu1024, \fBg\fP multiply by 1000\(mu1000\(mu1000, \fBG\fP multiply by 1024\(mu1024\(mu1024, \fBt\fP multiply by 1000\(mu1000\(mu1000\(mu1000, and \fBT\fP multiply by 1024\(mu1024\(mu1024\(mu1024. If no multiplier is present, the value is just counted in bytes. Whether memory values above the 32-bit limit are representable on 32-bit systems, even for disk space, is system-dependent. .\" .SS "\fBpe_name\fP" A PE name is the name of a Grid Engine parallel environment described in .M sge_pe 5 . .nf \fIpe_name\fP := \fIobject_name\fP .fi .\" .SS "\fBproject_name\fP" A project name is the name of a Grid Engine project described in .M project 5 . .nf \fIproject_name\fP := \fIobject_name\fP .fi .\" .SS "\fBqueue_name\fP" A queue name is the name of a Grid Engine queue described in .M queue_conf 5 . .nf \fIqueue_name \fP := \fIobject_name\fP .fi .\" .SS "\fBtime_specifier\fP" A time specifier either consists of a positive decimal, hexadecimal or octal integer constant, in which case the value is interpreted to be in seconds, or is built from 3 decimal integer numbers separated by colon signs, where the first number counts the hours, the second the minutes and the third the seconds. If a number would be zero it can be left out but the separating colon must remain (e.g. \fB1:0:1\fP = \fP1::1\fP means 1 hour and 1 second). .\" .SS "\fBuser_name\fP" A user name can be the name of a .M login 1 user or of the Grid Engine user object described in .M user 5 . .nf \fIuser_name\fP := \fIobject_name\fP .fi .\" .SS "\fBuserset_name\fP" A user set name is the name of a Grid Engine access list or department described in .M access_list 5 . .nf \fIuserset_name\fP := \fIobject_name\fP .fi .PP .SS "\fBdate_time\fP" A \fIdate_time\fP value must conform to .RI [[ CC ] YY ] MMDDhhmm [\fB.\fP SS ], where: .PP .nf .RS .ta \w'XXXXXXXXXX'u \fICC\fP denotes the century in 2 digits. \fIYY\fP denotes the year in 2 digits. \fIMM\fP denotes the month in 2 digits. \fIDD\fP denotes the day in 2 digits. \fIhh\fP denotes the hour in 2 digits. \fImm\fP denotes the minute in 2 digits. \fIss\fP denotes the seconds in 2 digits (default 00). .fi .sp 1 If any of the optional date fields are omitted, the corresponding value of the current date is assumed. If .I CC is not specified, a .I YY of <70 means .RI 20 YY . .br Use of this option may cause unexpected results if the clocks of the hosts in the Grid Engine pool are out of sync. Also, the proper behavior of this option very much depends on the correct setting of the appropriate timezone, e.g. in the TZ environment variable (see .MO date 1 for details), when the Grid Engine daemons .M sge_qmaster 8 and .M sge_execd 8 are invoked. .SS "\fBtime\fP" A \fItime\fP value must conform to \fIhh\fP\fB:\fP\fImm\fP\fB:\fP\fIss\fP, or \fIseconds\fP where: .PP .nf .RS .ta \w'XXXXXXXXXX'u \fIhh\fP denotes the hour in 2 digits. \fImm\fP denotes the minute in 2 digits. \fIss\fP denotes the seconds in 2 digits (default 00). \fIseconds\fP is a number of seconds (used for duration values) .fi .\" .SS "\fBname\fP" A \fIname\fP is an arbitrary string of ASCII printing characters, but may not contain "/", ":", "@", "\\", "*", or "?". .SS \fBaccount_name\fP Identifies the account to which the resource consumption of a job should be charged. .nf \fIaccount_name\fP := \fIname\fP .fi .\" .SS \fBjob_name\fP A job name is a .I name as above, with the restriction that it cannot start with a digit (to avoid ambiguity with a job number in some contexts). .\" .SS \fBar_name\fP An advance reservation name is a .I name as above, with the restriction that it cannot start with a digit (to avoid ambiguity with an AR number in some contexts). .\" .SH "MATCHING TYPES" These types are used for matching Grid Engine configuration: .\" .\" .SS "\fBexpression\fP" A wildcard expression is a regular boolean expression that consists of one or more \fIpattern\fPs joined by boolean operators. When a wildcard expression is used, the following definition applies: .PP .\" .nf .ta \w'XXXXXXXX'u expression = ["!"] ["("] valExp [")"] [ AND_OR expression ]* valExp = pattern | expression AND_OR = "&" | "|" .fi where: .PP .\" .nf .ta \w'XXXXXXXXXX'u "!" not operator: negate the following pattern or expression "&" and operator: logically and with the following expression "|" or operator: logically or with the following expression "(" open bracket: begin an inner expression. ")" close bracket: end an inner expression. "pattern" see the \fBpattern\fP definition that follows .fi .PP .\" If typed at a shell, the expression itself should be quoted to ensure that it is not expanded by the shell. .PP .\" .ta e.g. .RS .nf .ta \w'XXXXXXXXXXXXXXX'u "(lx*|sol*)&*64*" any string beginning with either "lx" or "sol" and containing "64" "rh_3*&!rh_3.1" any string beginning with "rh_3", except "rh_3.1" .fi .\" .SS "\fBpattern\fP" When patterns are used the following definitions apply: .PP .nf .ta \w'XXXXXXXX'u "*" matches any character and any number of characters (between 0 and infinity). "?" matches any single character. "." is the character ".". It has no other meaning. "\\" escape character, making the following character match literally; "\\\\" matches "\\", "\\*" matches "*", "\\?" matches "?". "[...]" specifies an array or a range of allowed characters for one character at a specific position. Character ranges may be specified using the a\-z notation. The caret symbol (\fB^\fP) is \fInot\fP interpreted as a logical not; it is interpreted literally. .fi .PP For more details please see .MO fnmatch 5 , .MO glob 7 . .PP A pattern on a shell command line should normally be quoted to avoid it being interpreted by the shell as a file match. .PP .SS "\fBrange\fP" The task range specifier has the form .sp 1 .IR n [ \fB\-\fPm [ \fB:\fPs ]][ \fB,\fPn [ \fB\-\fPm [ \fB:\fPs ]] \fB,\fP ...] or .IR n [ \fB\-\fPm [ \fB:\fPs ]][\ n [ \fB\-\fPm [ \fB:\fPs ]] \ ...] .sp 1 and thus consists of a comma- or blank-separated list of range specifiers .IR n [ \fB\-\fPm [ \fB:\fPs ]]. The ranges are concatenated to the complete task id range. Each range may be a single number, a simple range of the form \fIn\fP\fB\-\fP\fIm\fP, or a range with a step size. .PP .SS "\fBwc_ar\fP" The wildcard advance reservation (AR) specification is a placeholder for AR ids and AR names including AR name patterns. An AR id always references one AR, while the name and pattern might reference multiple ARs. .sp 1 \fIwc_ar\fP := \fIar_id\fP | \fIar_name\fP | \fIpattern\fP .PP .SS "\fBwc_ar_list\fP" The wildcard advance reservation (AR) list specification allows referencing multiple ARs with one command. .PP \fIwc_ar_list\fP := \fIwc_ar\fP[\fB,\fP \fIwc_ar\fP \fB,\fP ...] .PP .SS "\fBwc_host\fP" A wildcard host specification (\fIwc_host\fP) is a wildcard expression which might match one or more hosts used in the cluster. The first character of that string never begins with an at-character ('@'), even if the expression begins with a wildcard character. .PP .\" .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXX'u * all hosts a* all host beginning with an 'a' .fi .\" .SS "\fBwc_hostgroup\fP" A wildcard hostgroup specification (\fIwc_hostgroup\fP) is a wildcard expression which might match one or more hostgroups. The first character of that string is always an at-character ('@'). .PP More information concerning hostgroups can be found in .M hostgroup 5 .PP .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXX'u @* all hostgroups in the cluster @solaris the @solaris hostgroup .fi .\" .SS "\fBwc_job\fP" The wildcard job specification is a placeholder for job ids, and job names including job name patterns. A job id always references one job, while the name and pattern might reference multiple jobs. .sp 1 \fIwc_job\fP := \fIjob-id\fP | \fIjob_name\fP | \fIpattern\fP .PP .SS "\fBwc_job_range\fP" The wildcard job range specification allows referencing specific array tasks for one or multiple jobs. The job is referenced via \fIwc_job\fP and in addition gets a range specifier for the array tasks. .sp 1 \fIwc_job_range\fP := \fIwc_job\fP [\fB\-t\fP \fIrange\fP] .sp 1 If present, the \fItask_range\fP restricts the effect of the \fIqalter\fP etc. operation to the array job task range specified as a suffix to the job id. (See the \fB\-t\fP option to .M qsub 1 for further details on array jobs.) .PP .SS "\fBwc_job_list\fP" The wildcard job list specification allows referencing multiple jobs with one command. .PP \fIwc_job_list\fP := \fIwc_job\fP[\fB,\fP \fIwc_job\fP, ...] .PP .SS "\fBwc_job_range_list\fP" The wildcard job range list (\fIwc_job_range_list\fP) allows referencing multiple job ranges with one command. one of the following forms: .sp 1 \fIwc_job_range_list\fP := \fIwc_job_range\fP[\fB,\fP\fIwc_job_range\fP...] .PP .SS "\fBwc_qdomain\fP" \fIwc_qdomain\fP := \fIwc_cqueue\fP "@" \fIwc_hostgroup\fP .PP A wildcard expression queue domain specification (\fIwc_qdomain\fP) starts with a wildcard expression cluster queue name (\fIwc_cqueue\fP) followed by an at-character '@' and a wildcard expression hostgroup specification (\fIwc_hostgroup\fP). .PP A \fIwc_qdomain\fP is used to address a group of queue instances. All queue instances residing on a host which is part of matching hostgroups will be addressed. Please note, that \fIwc_hostgroup\fP always begins with an at-character. .PP .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXX'u *@@* all queue instances whose underlying host is part of at least one hostgroup a*@@e* all queue instances beginning with a whose underlying host is part of at least one hostgroup beginning with e *@@solaris all queue instances on hosts in the @solaris hostgroup .fi .\" .SS "\fBwc_cqueue\fP" A wildcard expression cluster queue specification (\fIwc_cqueue\fP) is a wildcard expression which might match one or more cluster queues used in the cluster. That string never contains an at-character ('@'), even if the expression begins with a wildcard character. .PP .\" .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXX'u * all cluster queues a* all cluster queues beginning with an 'a' a*&!adam all cluster queues beginning with an 'a', but not adam .fi .\" .SS "\fBwc_qinstance\fP" \fIwc_qinstance\fP := \fIwc_cqueue\fP "@" \fIwc_host\fP .PP A wildcard expression queue instance specification (\fIwc_qinstance\fP) starts with a wildcard expression cluster queue name (\fIwc_cqueue\fP) followed by an at-character '@' and a wildcard expression hostname (\fIwc_host\fP). .PP \fIwc_qinstance\fP expressions are used to address a group of queue instances whose underlying hostname matches the given expression. Please note that the first character of \fIwc_host\fP never matches the at-character '@'. .PP .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXX'u *@* all queue instances in the cluster *@b* all queue instances whose hostname begins with a 'b' *@b*|c* all queue instances whose hostname begins with a 'b' or 'c' .fi .\" .SS "\fBwc_queue\fP" \fIwc_queue\fP := \fIwc_cqueue\fP | \fIwc_qdomain\fP | \fIwc_qinstance\fP .PP A wildcard queue expression (\fIwc_queue\fP) might either be a wildcard expression, cluster queue specification (\fIwc_cqueue\fP), a wildcard expression queue domain specification (\fIwc_qdomain\fP), or a wildcard expression queue instance specification (\fIwc_qinstance\fP). .PP .nf .ta e.g. .RS .ta \w'XXXXXXXXXXXXXXXXX'u big_*1 cluster queues which begin with "big_" and end with "1" big_*&!*1 cluster queues which begin with "big_", but do not end with "1" *@fangorn all qinstances residing on host fangorn .fi .\" .SS "\fBwc_queue_list\fP" \fIwc_queue_list\fP := \fIwc_queue\fP ["," \fIwc_queue\fP "," ...] .PP Comma-separated list of \fIwc_queue\fP elements. .PP e.g. .RS big, medium_*@@sol*, *@fangorn.sun.com .PP .SS "\fBwc_user\fP" A wildcard user name pattern is either a wildcard user name specification or a full user name. .PP \fIwc_user\fP := \fIuser_name\fP | \fIpattern\fP .PP .SS "\fBwc_user_list\fP" A list of user names. .PP \fIwc_user_list\fP := \fIwc_user\fP[\fB,\fP\fIwc_user\fP\fB,\fP...] .PP .SS "\fBwc_project\fP" A wildcard project name pattern is either a wildcard project name specification or a full project name. .PP \fIwc_project\fP := \fIproject\fB | \fIpattern\fP .PP .SS "\fBwc_pe_name\fP" A wildcard parallel environment name pattern is either a wildcard PE name specification or a full PE name. .PP \fIwc_pe_name\fP := \fIpe_name\fP | \fIpattern\fP .PP .SS "\fBparallel_env\fP" The .B parallel_env specification has the format .PP \fIwc_pe_name\fP \fIn\fP[\fB\-\fP[\fIm\fP]]|[\fB\-\fP]\fIm\fP,... .PP specifying a parallel programming environment (PE) to select for a submitted job or an AR. The range descriptor following the wildcard PE name specifies the number of slots to allocate, which is usually equivalent to the total number of parallel processes to be run (for simple distributed memory jobs) or the number of threads (for shared memory or mixed distributed/threaded jobs), as implied by the PE definition. Grid Engine will allocate the appropriate resources, as available. .M sge_pe 5 contains information about the definition of PEs. .PP You can specify a PE name which uses wildcards. Thus the request "mpi*" will match any parallel environment with a name starting with the string "mpi". In the case of multiple parallel environments whose names match a name string, when it is required to select one the one with the most available slots is chosen. .PP The range specification is a list of range expressions of the form "\fIn\fP\fB\-\fP\fIm\fP", where \fIn\fP and \fIm\fP are positive, non-zero integers. The form "\fIn\fP" is equivalent to "\fIn\fP\fB\-\fP\fIn\fP". The form "\fB\-\fP\fIm\fP" is equivalent to "\fB1\-\fP\fIm\fP". The form "\fIn\fP\fB\-\fP" is equivalent to "\fIn\fP\fB\-\fPinfinity". The range specification is processed as follows: The largest number of queues requested is checked first. If enough queues meeting the specified attribute list are available, all are reserved. If not, the next smaller number of queues is checked, and so forth. .\" .SH SEE ALSO .M qacct 1 , .M qconf 1 , .M qquota 1 , .M qsub 1 , .M qrsub 1 .\" .SH COPYRIGHT See .M sge_intro 1 for a full statement of rights and permissions.