1GE_RESOURCE_QUOTA(5) Grid Engine File Formats GE_RESOURCE_QUOTA(5)
2
3
4
6 GE_resource_quota - Grid Engine resource quota file format
7
9 Resource quota sets (rqs) are a flexible way to set a maximum resource
10 consumption for any job requests. They are used by the scheduler to
11 select the next possible jobs for running. The job request distinction
12 is done by a set of user, project, cluster queue, host and pe filter
13 criteria.
14
15 By using the resource quota sets administrators are allowed to define a
16 fine granular resource quota configuration. This helps restricting some
17 job requests to a lesser resource usage and granting other job requests
18 a higher resource usage.
19
20 Note: Jobs requesting an Advance Reservation (AR) are not honored by
21 Resource Quotas and are neither subject of the resulting limit, nor are
22 debited in the usage consumption.
23
24 A list of currently configured rqs can be displayed via the qconf(1)
25 -srqsl option. The contents of each listed rqs definition can be shown
26 via the -srqs switch. The output follows the GE_resource_quota format
27 description. New rqs can be created and existing can be modified via
28 the -arqs, -mrqs and -drqs options to qconf(1).
29
30 A resource quota set defines a maximum resource quota for a particular
31 job request. All of the configured rule sets apply all of the time.
32 This means that if multiple resource quota sets are defined, the most
33 restrictive set is used.
34
35 Every resource quota set consist of one or more resource quota rules.
36 These rules are evaluated in order, and the first rule that matches a
37 specific request will be used. A resource quota set always results in
38 at most one effective resource quota rule for a specific request.
39
40 Note, Grid Engine allows backslashes (\) be used to escape newline
41 (\newline) characters. The backslash and the newline are replaced with
42 a space (" ") character before any interpretation.
43
45 A resource quota set definition contains the following parameters:
46
47 name
48 The resource quota set name.
49
50 enabled
51 If set to true the resource quota set is active and will be considered
52 for scheduling decisions. The default value is false.
53
54 description
55 This description field is optional and can be set to arbitrary string.
56 The default value is NONE.
57
58 limit
59 Every resource quota set needs at least one resource quota rule defini‐
60 tion started by the limit field. It's possible to define more resource
61 quota rules divided by a new line. A resource quota rule consists of
62 an optional name, the filters for a specific job request and the
63 resource quota limit.
64
65 By default, the expressed limit counts for the entire filter scope. To
66 express a filter-scope-specific limit, it's possible to define an
67 expanded list by setting the list between '{' '}'. It's only possible
68 to set one complete filter in an expanded list. The tags for express‐
69 ing a resource quota rule are:
70
71 name The name of the rule. The use is optional. The rule name must be
72 unique in one resource quota set.
73
74 users Contains a comma separated list of UNIX users or ACLs (see
75 access_list(5)). This parameter filters for jobs by a user in
76 the list or one of the ACLs in the list. Any user not in the
77 list will not be considered for the resource quota rule. The
78 default value is '*', which means any user. An ACL is differen‐
79 tiated from a UNIX user name by prefixing the ACL name with an
80 '@' sign. To exclude a user or ACL from the rule, the name can
81 be prefixed with the '!' sign. Defined UNIX user or ACL names
82 need not be known in the Grid Engine configuration.
83
84 projects
85 Contains a comma separated list of projects (see project(5)).
86 This parameter filters for jobs requesting a project in the
87 list. Any project not in the list will not be considered for the
88 resource quota rule. If no project filter is specified, all
89 projects and jobs with no requested project match the rule. The
90 value '*' means all jobs with requested projects. To exclude a
91 project from the rule, the name can be prefixed with the '!'
92 sign. The value '!*' means only jobs with no project requested.
93
94 pes Contains a comma separated list of PEs (see sge_pe(5)). This
95 parameter filters for jobs requesting a pe in the list. Any PE
96 not in the list will not be considered for the resource quota
97 rule. If no pe filter is specified, all pe and jobs with no
98 requested pe matches the rule. The value '*' means all jobs with
99 requested pe. To exclude a pe from the rule, the name can be
100 prefixed with the '!' sign. The value '!*' means only jobs with
101 no pe requested.
102
103 queues Contains a comma separated list of cluster queues (see
104 queue_conf(5)). This parameter filters for jobs that may be
105 scheduled in a queue in the list. Any queue not in the list
106 will not be considered for the resource quota rule. The default
107 value is '*', which means any queue. To exclude a queue from the
108 rule, the name can be prefixed with the '!' sign.
109
110 hosts Contains a comma separated list of host or hostgroups (see
111 host(5) and hostgroup(5)). This parameter filters for jobs that
112 may be scheduled in a host in the list or a host contained in a
113 hostgroup in the list. Any host not in the list will not be con‐
114 sidered for the resource quota rule. The default value is '*',
115 which means any hosts. To exclude a host or hostgroup from the
116 rule, the name can be prefixed with the
117
118 to This mandatory field defines the quota for resource attributes
119 for this rule. The quota is expressed by one or more limit defi‐
120 nitions separated by commas. The configuration allows two kind
121 of limits definitions
122
123 static limits
124 Static limits sets static values as quotas. Each limits
125 consists of a complex attribute followed by an "=" sign
126 and the value specification compliant with the complex
127 attribute type (see complex(5)).
128
129 dynamic limits
130 A dynamic limit is a simple algebraic expression used to
131 derive the limit value. To be dynamic, the formula can
132 reference a complex attribute whose value is used for the
133 calculation of the resulting limit. The formula expres‐
134 sion syntax is that of a sum of weighted complex values,
135 that is:
136
137 {w1|$complex1[*w1]}[{+|-}{w2|$complex2[*w2]}[{+|-}...]]
138
139 The weighting factors (w1, ...) are positive integers or
140 floating point numbers in double precision. The complex
141 values (complex1, ...) are specified by the name defined
142 as type INT or DOUBLE in the complex list (see com‐
143 plex(5)).
144 Note: Dynamic limits can only configured for a host-spe‐
145 cific rule.
146
147 Please note that resource quotas are not enforced as job resource lim‐
148 its. Limiting for example h_vmem in a resource quota set does not
149 result in a memory limit being set for job execution.
150
152 The following is the simplest form of a resource quota set. It
153 restricts all users together to the maximal use of 100 slots in the
154 whole cluster.
155
156 =======================================================================
157 {
158 name max_u_slots
159 description "All users max use of 100 slots"
160 enabled true
161 limit to slots=100
162 }
163 =======================================================================
164
165
166 The next example restricts user1 and user2 to 6g virtual_free and all
167 other users to the maximal use of 4g virtual_free on every host in
168 hostgroup lx_hosts.
169
170 =======================================================================
171 {
172 name max_virtual_free_on_lx_hosts
173 description "resource quota for virtual_free restriction"
174 enabled true
175 limit users {user1,user2} hosts {@lx_host} to virtual_free=6g
176 limit users {*} hosts {@lx_host} to virtual_free=4g
177 }
178 =======================================================================
179
180
181 The next example shows the use of a dynamic limit. It restricts all
182 users together to a maximum use of the double size of num_proc.
183
184 =======================================================================
185 {
186 name max_slots_on_every_host
187 enabled true
188 limit hosts {*} to slots=$num_proc*2
189 }
190 =======================================================================
191
192
194 ge_intro(1), access_list(5), complex(5), host(5), hostgroup(5),
195 qconf(1), qquota(1), project(5).
196
198 See ge_intro(1) for a full statement of rights and permissions.
199
200
201
202GE 6.2u5 $Date: 2008/12/22 11:13:35 $ GE_RESOURCE_QUOTA(5)