Define a Parametric Sweep Task

Applies To: Microsoft HPC Pack 2008 R2, Microsoft HPC Pack 2012, Microsoft HPC Pack 2012 R2, Windows HPC Server 2008 R2

A Parametric Sweep runs a command a specified number of times (indicated by start, end, and increment values), generally across indexed input and output files. The steps of the sweep may or may not run in parallel, depending on the resources that are available on the cluster when the task is running.

The index for your parametric sweep can apply to the instances of your application, and to your working directory, input, output, and error files. You can use the asterisk (*) character as a placeholder for the parametric sweep index. You can include more than one asterisk (*) to indicate the minimum number of positions to use when expressing the number of the index or sub-task. This does not limit numbers that require more positions. For more information, see Understanding Application and Data Files.

You can use the following procedure to create a parametric sweep job using HPC Job Manager.

Note

To complete this procedure, you must have been added as a user on the cluster, or you must be a member of a domain group that has been added as a user on the cluster. For more information, contact your cluster administrator.

Add a Parametric Sweep Task

In HPC Cluster Manager, the option to add a task is available in the New Job, Modify Job, and Copy Job dialog boxes. As an example, the following procedure describes how to add a task in the New Job dialog box.

To add a Parametric Sweep task

  1. In Job Management, in the Actions pane, click New Job.

  2. In the left pane of the New Job dialog box, click Edit Tasks.

  3. Point to the Add button, click the down arrow, and then click Parametric Sweep Task.

  4. In the task dialog box, type a name for your task.

  5. Define the index for your parametric sweep as follows:

    1. In Step 1 in the dialog box, set the start and end index values for your sweep.

    2. In Step 2, choose the increment for the sweep index.

    3. You can verify your index series under Step 4: Preview your sweep task.

  6. Type the task command, relative to the working directory, in the Command line entry box. For example, to create multiple indexed instances of your application, type:

    myApp.exe *

  7. Specify the Working directory for your task. The default value is the job owner’s home directory on the node (%userprofile%, which typically points to C:\Users\user_name).

    The working directory can include the asterisk (*) if each step in the sweep needs a discrete working directory.

  8. Specify the Standard input, Standard output, and Standard error file names relative to the working directory. Use the asterisk (*) to represent a file number that will increment from one iteration to the next according to the index settings you chose in Step 5 of this procedure.

    For example, if your input files are indexed as input1, input2, input3…, use the following format: input*.dat.

    If your input files are indexed as input001, input002, input003…, use the following format: input***.dat.

  9. Preview your parametric sweep task. If the job is not what you intended, make changes and preview again.

  10. Click OK to add the task to your job. The new task now appears in the list of tasks for your job.

  11. You can define additional Task properties, such as the Execution Settings and Required Resources by selecting the task in the list and modifying the property values in the Task Properties pane.

Additional considerations

  • The New Parametric Sweep Job dialog box provides a quick way to submit a parametric sweep job. When you use this method, you automatically accept all default job property values as defined by the Job Template that you use.

  • You can copy application or data files to each compute node that is allocated to your job by adding a Node Preparation task. For more information, see Define a Node Preparation Task.

  • You can clean up or collect data from nodes as they are released from your job by adding a Node Release task. For more information, see Define a Node ReleaseTask.

Additional references