1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220
|
<HTML>
<BODY BGCOLOR=white>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
NAME
SGE_resource_quota - Grid Engine resource quota file format
DESCRIPTION
Resource quota sets (rqs) are a flexible way to set a max-
imum resource consumption for any job requests. They are
used by the scheduler to select the next possible jobs for
running. The job request distinction is done by a set of
user, project, cluster queue, host and pe filter criteria.
By using the resource quota sets admistrators are allowed to
define a fine granular resource quota configuration. This
helps restricting some job requests to a lesser resource
usage and granting other job requests a higher resource
usage.
A list of currently configured rqs can be displayed via the
<B><A HREF="../htmlman1/qconf.html">qconf(1)</A></B> -srqsl option. The contents of each listed rqs
definition can be shown via the -srqs switch. The output
follows the <I>SGE</I>_<I>resource</I>_<I>quota</I> format description. New rqs
can be created and existing can be modified via the -arqs,
-mrqs and -drqs options to <B><A HREF="../htmlman1/qconf.html">qconf(1)</A></B>.
A resource quota set defines a maximum resource quota for a
particular job request. All of the configured rule sets
apply all of the time. This means that if multiple resource
quota sets are defined, the most restrictive set is used.
Every resource quota set consist of one or more resource
quota rules. These rules are evaluated in order, and the
first rule that matches a specific request will be used. A
resource quota set always results in at most one effective
resource quota rule for a specific request.
FORMAT
A resource quota set definition contains the following
parameters:
name
The resource quota set name.
enabled
If set to <I>true</I> the resource quota set is active and will be
considered for scheduling decisions. The default value is
<I>false</I>.
description
This description field is optional and can be set to arbi-
trary string. The default value is <I>NONE</I>.
limit
Every resource quota set needs at least one resource quota
rule definition started by the limit field. It's possible to
define more resource quota rules divided by a new line. A
resource quota rule consists of an optional name, the
filters for a specific job request and the resource quota
limit.
By default, the expressed limit counts for the entire filter
scope. To express a filter-scope-specific limit, it's possi-
ble to define an expanded list by setting the list between
'{' '}'. It's only possible to set one complete filter in an
expanded list. The tags for expressing a resource quota
rule are:
name The name of the rule. The use is optional. The rule
name must be unique in one resource quota set.
users
Contains a comma separated list of UNIX users or ACLs
(see <B><A HREF="../htmlman5/access_list.html">access_list(5)</A></B>). This parameter filters for jobs
by a user in the list or one of the ACLs in the list.
Any user not in the list will not be considered for the
resource quota rule. The default value is '*', which
means any user. An ACL is differentiated from a UNIX
user name by prefixing the ACL name with an '@' sign.
To exclude a user or ACL from the rule, the name can be
prefixed with the '!' sign. Defined UNIX user or ACL
names need not be known in the Grid Engine configura-
tion.
projects
Contains a comma separated list of projects (see <I>pro-</I>
<B><A HREF="../htmlman5/ject.html">ject(5)</A></B>). This parameter filters for jobs requesting a
project in the list. Any project not in the list will
not be considered for the resource quota rule. If no
project filter is specified, all projects and jobs with
no requested project match the rule. The value '*'
means all jobs with requested projects. To exclude a
project from the rule, the name can be prefixed with
the '!' sign. The value '!*' means only jobs with no
project requested.
pes Contains a comma separated list of PEs (see <B><A HREF="../htmlman5/sge_pe.html">sge_pe(5)</A></B>).
This parameter filters for jobs requesting a pe in the
list. Any PE not in the list will not be considered for
the resource quota rule. If no pe filter is specified,
all pe and jobs with no requested pe matches the rule.
The value '*' means all jobs with requested pe. To
exclude a pe from the rule, the name can be prefixed
with the '!' sign. The value '!*' means only jobs with
no pe requested.
queues
Contains a comma separated list of cluster queues (see
<B><A HREF="../htmlman5/queue_conf.html">queue_conf(5)</A></B>). This parameter filters for jobs that
may be scheduled in a queue in the list. Any queue not
in the list will not be considered for the resource
quota rule. The default value is '*', which means any
queue. To exclude a queue from the rule, the name can
be prefixed with the '!' sign.
hosts
Contains a comma separated list of host or hostgroups
(see <B><A HREF="../htmlman5/host.html">host(5)</A></B> and <B><A HREF="../htmlman5/hostgroup.html">hostgroup(5)</A></B>). This parameter filters
for jobs that may be scheduled in a host in the list or
a host contained in a hostgroup in the list. Any host
not in the list will not be considered for the resource
quota rule. The default value is '*', which means any
hosts. To exclude a host or hostgroup from the rule,
the name can be prefixed with the
to This mandatory field defines the quota for resource
attributes for this rule. The quota is expressed by one
or more limit definitions separated by commas. The con-
figuration allows two kind of limits definitions
static limits
Static limits sets static values as quotas. Each
limits consists of a complex attribute followed by
an "=" sign and the value specification compliant
with the complex attribute type (see <B><A HREF="../htmlman5/complex.html">complex(5)</A></B>).
dynamic limits
A dynamic limit is a simple algebraic expression
used to derive the limit value. To be dynamic, the
formula can reference a complex attribute whose
value is used for the calculation of the resulting
limit. The formula expression syntax is that of a
sum of weighted complex values, that is:
{w1|$complex1[*w1]}[{+|-}{w2|$complex2[*w2]}[{+|-}...]]
The weighting factors (w1, ...) are positive integers
or floating point numbers in double precision. The com-
plex values (complex1, ...) are specified by the name
defined as type INT or DOUBLE in the complex list (see
<B><A HREF="../htmlman5/complex.html">complex(5)</A></B>).
Note: Dynamic limits can only configured for a host-
specific rule.
EXAMPLES
The following is the simplest form of a resource quota set.
It restricts all users together to the maximal use of 100
slots in the whole cluster.
=======================================================================
{
name max_u_slots
description "All users max use of 100 slots"
enabled true
limit to slots=100
}
=======================================================================
The next example restricts user1 and user2 to 6g
virtual_free and all other users to the maximal use of 4g
virtual_free on every host in hostgroup lx_hosts.
=======================================================================
{
name max_virtual_free_on_lx_hosts
description "resource quota for virtual_free restriction"
enabled true
limit users {user1,user2} hosts {@lx_host} to virtual_free=6g
limit users {*} hosts {@lx_host} to virtual_free=4g
}
=======================================================================
The next example shows the use of a dynamic limit. It res-
tricts all users together to a maximum use of the double
size of num_proc.
=======================================================================
{
name max_slots_on_every_host
enabled true
limit hosts {*} to slots=$num_proc*2
}
=======================================================================
SEE ALSO
<B><A HREF="../htmlman1/sge_intro.html">sge_intro(1)</A></B>, <B><A HREF="../htmlman5/access_list.html">access_list(5)</A></B>, <B><A HREF="../htmlman5/complex.html">complex(5)</A></B>, <B><A HREF="../htmlman5/host.html">host(5)</A></B>, <I>host-</I>
<B><A HREF="../htmlman5/group.html">group(5)</A></B>, <B><A HREF="../htmlman1/qconf.html">qconf(1)</A></B>, <B><A HREF="../htmlman1/qquota.html">qquota(1)</A></B>, <B><A HREF="../htmlman5/project.html">project(5)</A></B>.
COPYRIGHT
See <B><A HREF="../htmlman1/sge_intro.html">sge_intro(1)</A></B> for a full statement of rights and permis-
sions.
</PRE>
<HR>
<ADDRESS>
Man(1) output converted with
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
</ADDRESS>
</BODY>
</HTML>
|