The Discriminator Block
This block specifies either a job-level or task-level discriminator for the job. A discriminator without the affects clause is considered a job-level discriminator. You can declare only one job-level discriminator. The affects clause specifies conditions that must be met for the discriminator to be applied to a particular task. You can use multiple discriminator blocks with affects clauses.
Discriminator declarations consist of a property name, a comparator, and a value:
param-name==|!=|<|>|<=|>=param-value
The property name refers to Engine properties. A predefined set of properties is assigned to all Engines by default. The administrator can assign additional properties to Engines at Engine Properties and Engine Property List. To see an Engine’s properties, select Engines > Engine Admin, and from the Actions list, click Engine Details. Property names are case sensitive in PDS scripts. For example, the following discriminates against Engines with a value of less than 350 in the cpuMHz Engine property:
cpuMHz > 350
This example shows the format of the affects clause:
discriminator affects $DSTASKID #variable < #comparator 10 #numeric or string end
The variable can be any array type or built-in variable. $DSTASKID is the number of the current task, starting with zero. The comparator and numeric or string match against the literal to determine if the discriminator applies against this task. The example above applies a discriminator to the first ten tasks in a job.