Download GLITE 3.0 USER GUIDE
Transcript
Example 6.2.2
(Specifying requirements on the CE)
The Requirements attribute can be used to express constraints on the resources where the job should run. Its
value is a Boolean expression that must evaluate to true for a job to run on that specific CE. For that purpose all
the GLUE attributes of the IS can be used, by prepending the other. string to the attribute name. For a list of
GLUE attributes, see Appendix G.
Note: Only one Requirements attribute can be specified (if there are more than one, only the last one is considered). If several conditions must be applied to the job, then they all must be included in a single Requirements
attribute, using a boolean expression.
For example, let us suppose that the user wants to run on a CE using PBS as batch system, and whose WNs
have at least two CPUs. He will write then in the job description file:
Requirements = other.GlueCEInfoLRMSType == "PBS" && other.GlueCEInfoTotalCPUs > 1;
The WMS can be also asked to send a job to a particular CE with the following expression:
Requirements = other.GlueCEUniqueID == "lxshare0286.cern.ch:2119/jobmanager-pbs-short";
Note: As explained in 6.3.7, normally the condition that a CE is in production state is automatically added to
the requirements clause. Thus, CEs that do not correctly publish this will not match. This condition is, nevertheless,
configurable.
If the job must run on a CE where a particular experiment software is installed and this information is published
by the CE, something like the following must be written:
Requirements = Member("CMSIM-133",other.GlueHostApplicationSoftwareRunTimeEnvironment);
Note: The Member operator is used to test if its first argument (a scalar value) is a member of its second
argument (a list). In this example, the GlueHostApplicationSoftwareRunTimeEnvironment attribute is a list.
Example 6.2.3
(Specifying requirements using wildcards)
It is also possible to use regular expressions when expressing a requirement. Let us suppose for example that
the user wants all his jobs to run on any CE in the domain cern.ch. This can be achieved putting in the JDL file
the following expression:
Requirements = RegExp("cern.ch", other.GlueCEUniqueId);
The opposite can be required by using:
Requirements = (!RegExp("cern.ch", other.GlueCEUniqueId));
CERN-LCG-GDEIS-722398
Manuals Series
Page 69