[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.]

This guide provides scenarios and steps to try new features in Windows® HPC Server 2008 R2.

Important

Read the Release Notes for Windows HPC Server 2008 R2 Beta 1 before following the steps in this guide.

This guide includes the following test scenarios:

Cluster Management

SOA scheduling and runtime

Job scheduling and runtime

Cluster Management

The test focus scenarios in this section help you test new management features in this release.

Create customizable dashboards that allow you to monitor nodes at a glance

Scenario

When administrating clusters of up to 1000 nodes, you need the ability to create customizable dashboards that allow you to monitor several node metrics for the entire cluster at a glance. To more easily identify outliers and bottlenecks and quickly switch between views, you can create multiple node list or heat map tabs that focus on sets of information such as:

  • Network view

  • CPU or disk load

  • Application trends for large MPI jobs

Goal

Create one or more new tabs in Node Management.

Requirements

  • A head node with Windows HPC Server 2008 R2 Beta 1 installed.

  • Administrative permissions on the cluster.

Steps

  1. In HPC Cluster Manager, click Node Management.

  2. In the Navigation Pane, click Nodes.

  3. In the view pane, click the blank tab, and then click Customize Tab.

  4. Type a name for the tab, and then click List View or Heat Map View.

  5. Add one or more metrics.

  6. Click Apply at any time to see the current tab configuration.

  7. Click OK to save your changes to the tab.

  8. In the view pane, use the slide bar to adjust the heat map zoom, or click the auto-fit icon to automatically adjust the heat map zoom for the best fit based on the number of nodes.

To change the settings on a tab, right-click the tab name, then click Customize Tab.

If you are creating a Heat Map tab, try applying the following settings:

  • Overlaying view (need at least two metrics)

  • Aggregate metrics over a short time period by increasing the number of seconds for the metric value display

  • Select the Visually group nodes based on location information check box

  • Select the Logarithmic scale check box for a metric

Expected results

  • Your new tab configurations are saved, and you can easily switch between different views of your nodes.

  • The node filters that you apply persist across all tabs.

  • The nodes that you select in one tab are selected when you go to a different tab.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Video demonstration of the heat map view on a large Windows HPC Server 2008 R2 Beta 1 cluster (http://go.microsoft.com/fwlink/?LinkId=177736)

Save a command or script as a diagnostic test in HPC Cluster Manager

Scenario

When managing your cluster, there are some commands or scripts that you run regularly to check the status of your nodes. You would like to be able to run your own tests and the built-in tests from a single location.

Goal

Save the fsutil volume diskfree command as a diagnostic test that checks for free disk space on your nodes and then run the test and view results from HPC Cluster Manager.

Requirements

  • A head node with Windows HPC Server 2008 R2 Beta 1 installed.

  • Administrative permissions on the cluster.

How to test

Step 1: Define the test

  1. On the head node, open a text editor such as Notepad, and paste in the following XML code. Optionally, change the Company name to your name.

    <DiagnosticTests>
    	<DiagnosticTest
    		Name="Free Disk Space"
    		Description="Checks the amount of disk space free on the specified drive."
    		Company="Beta 1 Participant"
    		Suite="Sample"
    		Alias="diskspace">
    		<Parameters>
    			<Parameter Name="Drive" SwitchName="Drive" Type="String" Visibility="True" 
    				Description="The letter name of the 
    				drive for which you want to check the 
    				amount of free disk space, without a 
    				colon (:) or backslash (\). The default 
    				is C." 
    				DefaultValue="C" Format="{1}:"/>
    		</Parameters>
    		<RunStep Command="fsutil volume diskfree" />
    	</DiagnosticTest>
    </DiagnosticTests>
    
  2. Save the file as C:\SampleTests\DiskSpaceTest.xml.

    Ensure that in Save as type, you select All files (*.*).

Step 2: Add the test to the cluster

  1. Run HPC PowerShell as an administrator. and type the following cmdlet:

    Add-HpcTest -File C:\SampleTests\DiskSpaceTest.xml

  2. To see information about the test you added, type the following cmdlet:

    Get-HpcTestDetail -Alias diskspace

  3. To see all cmdlets that relate to HPC tests, type Get-help *hpctest*.

Step 3: Run the test and view results

  1. In HPC Cluster Manager, click Diagnostics.

  2. In the Navigation Pane, under Tests, select the new node named Beta 1 Participant.

  3. In the view pane, right-click Free Disk Space, then click Run.

  4. In the Run Diagnostics Tests dialog box, click Run.

  5. In the Navigation Pane, click Test Results, select the new node named Beta 1 Participant.

  6. In the Details Pane you can see the progress of the test. Click the Results tab to see the results.

Expected results

The results from the test should look similar to this:

NODE 1 - - > Finished

------------------------------------

Total # of free bytes : 33324670976

Total # of bytes : 41910938752

Total # of avail free bytes : 33324670976

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Diagnostics Extensibility in Windows HPC Server 2008 R2 CTP2 Step-by-Step Guide on MSDN (http://go.microsoft.com/fwlink/?LinkId=177604)

SOA scheduling and runtime

The test focus scenarios in this section help you test new SOA scheduling and runtime features in this release.

Optimize job scheduling for SOA jobs and interactive workloads

Scenario

Your cluster runs mostly interactive workloads, such as service-oriented architecture (SOA) jobs. One or two large jobs may be taking up most of the cluster, but there are many other interactive jobs that need to run. You want as many jobs to start as possible, rather than having most of the resources allocated to the top of the job queue.

To optimize job scheduling for interactive workloads, you can change the scheduling mode from Batch Queued to Service Balanced.

In Service Balanced mode, the scheduler attempts to start all incoming jobs as soon as possible at their minimum resource requirements. After all the jobs in the queue have their minimum resources, additional cluster resources are allocated to jobs based on their load and priority. Resource allocation is periodically rebalanced to fill idle resources and accommodate new jobs.

Goal

Change the scheduling mode from Batch Queued to Service Balanced.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node and one broker node.

  • Administrative permissions on the cluster.

How to test

  1. Use one of the following methods to change the Scheduling Mode from Batch Queued to Service Balanced:

    • Run HPC PowerShell as an administrator, and then type:

      Set-HpcClusterProperty –schedulingMode Balanced

    • Open a Command Prompt window as an administrator, and then type:

      cluscfg setparams SchedulingMode=Balanced

  2. Submit several jobs to the cluster.

After you have set the Service Balanced mode, you can adjust how additional resources are allocated with the PriorityBias setting, and how often the scheduler rebalances with the ReBalancingInterval setting.

PriorityBias controls how additional resources are allocated to jobs. You can choose from the following three options:

  • HighBias: All additional resources are allocated to higher priority jobs.

  • MediumBias: Each priority level is given twice as many resources as the level below it.

  • NoBias: Resources are allocated equally regardless of priority.

ReBalancingInterval represents the time, in seconds, between scheduler rebalancing passes.

You can use one of the following methods to change Priority Bias and ReBalancingInterval:

  • Run HPC PowerShell as an administrator, and then type:

    Set-HpcClusterProperty –PriorityBias HighBias –ReBalancingInterval 20

  • Open a Command Prompt window as an administrator, and then type:

    cluscfg setparams PriorityBias=HighBias ReBalancingInteral=20

Expected results

Jobs are started as soon as possible at their minimum resources requirements. If all jobs in the queue have started, all remaining resources in the cluster are added to jobs based on their priority and workload. As new jobs start, cluster resources are reallocated in proportion to each job’s priority.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Batch Queued mode is priority based, first come first served scheduling like in Windows HPC Server 2008. For information, see Understanding Job Scheduling Policies (http://go.microsoft.com/fwlink/?LinkId=177866).

Manage SOA service configuration settings from a single location

Scenario

You have multiple SOA services installed to a central location on your cluster, and you want the ability to see all of the deployed services, change settings to help diagnose and troubleshoot specific services, and modify the service configuration files from a centralized location.

In HPC Cluster Manager, in Configuration, the Services view lets you:

  • See a list of all of the SOA services that are centrally deployed on your cluster (services that are deployed locally on compute nodes are not included).

  • Set event level tracing.

    Configure error log output.

  • Open the service configuration file in an editor.

Goal

Add a service on the cluster and manage the service configuration settings from HPC Cluster Manager.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node and one WCF Broker node.

  • Administrative permissions on the cluster.

  • A SOA service assembly (DLL), and a client application that starts an HPC session for that service.

  • Optionally, a client computer with HPC Pack 2008 R2 installed.

How to test

  1. Copy your service .dll file to a folder named C:\ServicesR2 on each compute node.

  2. On the head node, copy the service configuration file to the C:\Program Files\Microsoft HPC Pack 2008 R2\Data\ServiceRegistration folder.

  3. Click Start, point to All Programs, click Microsoft HPC Pack 2008 R2, and then click HPC Cluster Manager.

  4. In HPC Cluster Manager, click Configuration, and then click Services.

  5. The view pane displays a list all services that have configuration files in the ServiceRegistration folder. Verify that the service that you just added appears in the list.

  6. Right-click your service, then click Edit Configuration File. The configuration file for your service opens in a text editor.

    Ensure that the assembly attribute of the service element points to the location of your service .dll (C:\ServicesR2\<yourServiceName>.dll). For example:

    <microsoft.Hpc.Session.ServiceRegistration>
    	<service assembly="C:\ServicesR2\<yourServiceName>.dll">
    </microsoft.Hpc.Session.ServiceRegistration>
    
    Save the changes, if you made any, and then close the text editor.

  7. Right-click your service, then click Choose Event Trace Level. In the dialog box, select the desired trace level and then click OK.

  8. Right-click your service, and then click Configure Error Log Output.. In the dialog box, select the Use a directory to output full error messages check box, and then type the location of a shared file, for example \\<headnode>\CcpSpoolDir\. Click OK.

Expected results

  • Service configuration files that you put in the C:\Program Files\Microsoft HPC Pack 2008 R2\Data\ServiceRegistration folder appear in the Configuration section in HPC Cluster Manager.

  • You can edit the service configuration file.

    Note

    You must have write permissions on the configuration file in order to edit the file.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Run a SOA client that supports the fire and recollect model

Scenario

For a long running SOA session (sometime overnight), users want to be able to create the session, send out all calculation requests, turn off their desktop or laptop, and come back the next morning to get the results.

Goal

Run SOA client, start a session and send requests, then re-attach to the session to collect results.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node and one WCF Broker node.

  • Administrative permissions on the cluster.

  • Visual Studio installed on the head node.

How to test

  1. Download the WcfBrokerR2Samples.zip file from Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

    The HelloWorldR2 solution includes a sample fire and recollect client application named FireNRecollect. For more information, see the Readme.doc file that is included in the download.

  2. On your head node, go to C:\ and unzip WcfBrokerR2Samples.zip.

  3. Open HelloWorldR2.sln (C:\WcfBrokerR2Samples\DotNet\HelloWorldR2\) in Visual Studio and build the solution (in the Build menu, click Build Solution). This builds the EchoService.dll.

  4. Copy EchoService.dll (C:\WcfBrokerR2Samples\DotNet\HelloWorldR2\EchoService\bin\) to the C:\ServicesR2 folder on every compute node.

  5. Copy EchoService.config (C:\ WcfBrokerR2Samples\DotNet \HelloWorldR2\EchoService\) to the C:\Program Files\Microsoft HPC Pack 2008 R2\Data\ServiceRegistration folder on the head node.

  6. Click Start, point to All Programs, click Microsoft HPC Pack 2008 R2, and then click HPC Cluster Manager.

  7. In HPC Cluster Manager, click Configuration, and then click Services.

  8. Right-click EchoService, then click Edit Configuration File. The configuration file opens in a text editor.

    Change the assembly attribute of the service element so that it points to C:\ServicesR2\EchoService.dll. For example:

    <microsoft.Hpc.Session.ServiceRegistration>
    	<service assembly="C:\ServicesR2\EchoService.dll">
    </microsoft.Hpc.Session.ServiceRegistration>
    
    Save the changes, and then close the text editor.

  9. On the head node, run a Command Prompt window as an administrator.

  10. Type the following command:

    cd C:\WcfBrokerR2Samples\DotNet\HelloWorldR2\FireNRecollect\bin\debug

  11. Type:

    FireNRecollect

  12. When prompted, enter your password then click OK.

  13. You should see the following output to the console:

    Creating a session... done session id = <sessionID >

  14. In HPC Cluster Manager, go to Job Management. Find the job with the same job ID as your session ID. Double click the job to monitor session progress.

  15. Return to the Command Prompt window and type the following, where <sessionID> is your session ID:

    FireNRecollect <sessionID>

Expected results

When you reattach to your fire and recollect session, you should see the following output to the console:

Attaching to session <sessionID>... done

Retrieving results...

Received response for request 1: <NODENAME>:helloworld!

Received response for request 2: <NODENAME>:helloworld!

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Job scheduling and runtime

The test focus scenarios in this section help you test new job scheduling and runtime features in this release.

Provision or clean up the nodes that are allocated to your job

Scenario

You want to perform some basic provisioning of the nodes that are allocated to your job. For example, you may want to copy files or verify the running environment before your primary tasks run. To prepare the nodes that are allocated to your job, you can add a Node Preparation task to your job.

After your tasks complete, you need to collect data or log files from the nodes that were allocated to your job or return the nodes to their prejob state. To clean up nodes after running your primary tasks, you can add a Node Release task to your job.

Goal

Submit a job with Node Preparation and Node Release tasks.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node.

  • User permission on the cluster.

How to test

For detailed step-by-step instructions, see Submitting a Job with Node Preparation and Node Release Tasks in Windows HPC Server 2008 R2 Beta 1 Step-by-Step Guide.

  1. Create a new job.

  2. Add a Node Preparation task.

    Notes
    • If you are using HPC PowerShell or a Command Prompt window, use the –Type property to designate a Node Preparation task, for example:
    • Add-HpcTask –jobID <ID> –Type NodePrep
    • Job add <ID> -Type:”NodePrep”
  3. Add one or more primary tasks (Basic or Parametric Sweep) to the job.

  4. Add a Node Release task.

    Note

    If you are using HPC PowerShell or a Command Prompt window, specify a task with Type set to NodeRelease.

  5. Submit the job.

Now try to cancel a Running job that includes a Node Release task.

Expected results

  • The Node Preparation task runs on each node before the Basic or Parametric Sweep tasks.

  • If a Node Preparation task fails to run on a node, that node is not added to the job.

  • The Node Release task runs on each node as it is released from the job.

  • The Node Release task runs if the job is canceled or preempted.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Provide custom job progress information

Scenario

Many of the applications that you run on your cluster run for a long time, and they consist of many internal stages. To better monitor job progress, you want to be able to see information about the percentage of completion or about the internal state of the application (such as data file loaded, running simulation, or writing data).

You can include commands in your application or script files to set and maintain custom job progress information with the Progress and Progress Message job properties.

  • Progress is an integer between 0-100 that represents the percentage of the job that is complete.

  • Progress Message is a string up to 80 characters that can display a custom status message.

Goal

Set and maintain values for job Progress and Progress Message from an application or script.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node.

  • User permissions on the cluster.

How to test

Include commands to set Progress and Progress Message in your scripts or applications. For example, if your application includes a loop that performs some work, you can update the progress properties at each iteration.

To set the Progress and Progress Message properties in a batch (.bat) file, an HPC PowerShell script (.ps1), or an application, you can use the %CCP_JOBID% environment variable to get the job ID of the current job, as follows:

You can use one of the following methods to see the progress information for a running job:

  • In HPC Job Manager, double-click a running job to open the View Job dialog box.

  • At a command prompt, type the following command, where <jobID> is the ID of your job:

    Job view <jobID>

  • In HPC PowerShell, type the following cmdlet, where <jobID> is the ID of your job:

    Get-HpcJob <jobID>|select id, Progress, ProgressMessage

Expected results

  • You can view custom progress information in HPC Job Manager, HPC PowerShell, or a Command Prompt window.

  • By default, the HPC Job Scheduler Service sets and maintains the value for the Progress job property. The service does not continue to update Progress for a job if you provide a value for Progress through the command-line interface, HPC PowerShell, or the APIs.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

Allow canceled tasks time to save state information or clean up before exiting

Scenario

When a running task is stopped during execution, you want to allow time for the application to save state information, write a log message, create or delete files, or for services to finish computation of their current service call. You can configure the amount of time, in seconds, to allow applications to exit gracefully by setting the Task Cancelation Grace Period cluster property. The default Task Cancelation Grace Period is 15 seconds.

Important

In Windows HPC Server 2008 R2, the HPC Node Manager Service stops a running task by sending a CTRL+BREAK signal to the application. The application must include code to handle the CTRL+BREAK event to make use of the Task Cancelation Grace Period. If the application does not respond to the CTRL+BREAK event, it exits immediately.

Goal

Allow tasks that are canceled time to perform cleanup or completion steps before exiting.

Requirements

  • A Windows HPC Server 2008 R2 Beta 1 cluster with at least one compute node.

  • Administrative permissions on the cluster.

How to test

  1. Submit a job that runs an application that includes code to handle a CTRL+BREAK event.

  2. Cancel the job while it is running.

  3. Verify that the actions in the application’s CTRL+BREAK event handler were performed.

You can use one of the following methods to change the Task Cancellation Grace Period to 10 seconds:

  • Run HPC PowerShell as an administrator, and then type:

    Set-HpcClusterProperty –TaskCancelGracePeriod 10

  • Open a Command Prompt window as an administrator, and then type:

    cluscfg setparams TaskCancelGracePeriod=10

Expected results

  • Canceled tasks that do not handle CTRL+BREAK events exit immediately.

  • Canceled tasks that include code to handle CTRL+BREAK events can exit gracefully.

Feedback

To provide feedback, send an e-mail message to HPCBeta@microsoft.com, or visit Microsoft Windows HPC Server 2008 R2 Beta on the Microsoft® Connect Web site (http://go.microsoft.com/fwlink/?LinkId=169523).

Related Resources

None.