Job Templates

You can use job templates to define sets of customized job submission policies. With job templates, administrators can effectively limit the types of jobs coming into the cluster, while also providing default values that aid users who are unfamiliar with the HPC Job Scheduler Service terminology. Because the job template provides default values, users can even submit jobs without specifying any job properties.

With job templates you can:

  • Enforce run time and size limits on jobs

  • Limit job priority

  • Send different types of jobs to different sets of nodes

  • Partition the cluster for different user groups

  • Simplify job submission for the user

  • Customize the job submission process to support different user scenarios

Job template settings

Each job template consists of:

  • A list of job properties and associated value settings. For each property, the administrator can define:

    • A default value which will be used if no value is specified by the user

    • Constraints on what values are acceptable

  • An access control list (ACL) defining which users have permission to submit jobs using the job template.

In HPC Job Manager, when a user selects a job template for a new job, the available values for job properties change accordingly. For example, the Priority drop-down menu only shows the priority levels that are valid under the selected template, the run-time setting cannot be raised above the defined maximum, and where applicable, the default values are already filled in. After the user submits the job, the HPC Job Scheduler Service confirms template permissions, applies default settings for any properties that the user did not specify, and validates each property against value constraints.

Note

Job templates do not need to include definitions for every job property. If a property is not specified in the job template, the HPC Job Scheduler Service applies the defaults and constraints from the Default job template instead.

The Default job template

Microsoft HPC Pack includes one pre-defined job template called “Default”. The Default template does not specify any constraints; users can change any property for their job using this template. The default template allows all job priority levels.

As a cluster administrator, you can edit property settings and modify user permission for the Default job template. For more information, see Edit a Job Template and Set Job Template Permissions. Note that you cannot delete the Default job template, and you cannot remove required job properties from the Default template.

Important

When a user submits a job without specifying a job template, the HPC Job Scheduler Service automatically assigns the Default job template.

When a user submits a job without specifying a job template, you can systematically assign specific job templates based on information of your choosing by creating a submission filter application. For more information, see Understanding Activation and Submission Filters.

How job templates are applied

After the user submits the job, the HPC Job Scheduler Service applies the job template by:

  • Confirming that the user has the Submit jobs permission for the specified job template. If not, the job is rejected and the submission fails. This enables an administrator to control the types of jobs that a select group of users can submit.

  • Applying default settings from the job template for any job properties that the user did not specify.

  • Validating each job property against the constraints that are defined in the job template. If any job property is not within the valid range that is specified in the template, the job is rejected and the submission fails.

In this section