What's New in Microsoft HPC Pack 2012 R2 Update 2
Applies To: Microsoft HPC Pack 2012 R2
This document lists the new features and changes that are available in Microsoft® HPC Pack 2012 R2 Update 2. For late-breaking issues and getting started guidance, see Release Notes for Microsoft HPC Pack 2012 R2 Update 2.
In this topic:
Support for Linux nodes on Azure
Run Excel workbooks on HPC clusters on Azure
Built-in auto grow/shrink service
Cluster deployment with Azure quickstart templates
SOA improvements
Other improvements
Support for Linux nodes on Azure
With this update, HPC Pack now supports Linux VMs for compute nodes running on Azure. Customers running high-performance computing clusters on Linux can now use HPC Pack deployment, management, and scheduling capabilities. The user experience is very similar to the one for Windows nodes.
Deployment – In HPC Pack 2012 R2 Update 1 we released an IaaS deployment script tool to help create an HPC Pack VM cluster on Azure. Now in Update 2 (starting from version 4.4.0), we extend the support scope to Linux nodes as well. By following the latest documentation for this tool, the entire deployment experience is easy and fast, with multiple options from which you can choose.
We plan to provide Azure Resource Manager (ARM) template-based deployment solutions for Linux nodes at a later time.
Management and scheduling – The management and scheduling experience of Linux nodes in the HPC cluster manager is quite the similar to the experience for Windows nodes we already support. You can see the Linux nodes heat maps, create jobs with specific Linux cmdlets, and monitor job, task, and node status. Additionally, the useful Clusrun tool is also supported on Linux nodes.
Support for RDMA – Azure now provides RDMA network support for Linux VMs as well as Windows Server instances created in the A8 or A9 size. Size A8 or A9 Linux nodes in an HPC Pack cluster will automatically connect to the RDMA network as long as you choose a supported Linux RDMA images from the Azure Marketplace.
For more information about Linux support in Update 2, see Getting Started with HPC Pack and Linux in Azure.
Run Excel workbooks on HPC clusters on Azure
Deployment – Using the recently released Azure Resource Manager and Azure quickstart templates, we released a template to create an HPC Pack cluster with Excel pre-installed on compute nodes. See this article for instructions to deploy a working HPC cluster shortly.
Excel workbook – With a few simple changes you make on your existing Excel workbook, you can directly point your computation workloads to the cluster on Azure.
Excel UDF – By changing only the head node name to the IaaS cluster name and deploying the XLL files on the IaaS cluster, the UDF offloading works just as in on-premises HPC Pack clusters.
Transparent data movement – You don't need to worry about the how to move the Excel workbooks from your local workstation to Azure; all these details are handled by HPC Pack. You can see the work done just as in a local on premises cluster.
Built-in auto grow/shrink service
In HPC Pack 2012 R2 Update 1, we introduced and released the first version of support for automatically growing or shrinking the Azure VM resources in an HPC Pack cluster via a Windows PowerShell script. Now in Update 2, we improved this feature to be a built-in service. You can now enable or disable this feature on demand without keeping a Windows PowerShell script running. This features still targets Azure nodes (PaaS) and Azure IaaS VM compute nodes in an HPC Pack cluster. Additional improvements include:
Improved efficiency of nodes growing and shrinking.
Grow or shrink the HPC Azure nodes by checking the job’s node group or required nodes, and grow them accordingly.
Configure the auto grow/shrink service during HPC Pack cluster deployment by the IaaS deployment tool through the AutoGrowShrink option.
If you don’t use the HPC Pack IaaS cluster deployment tool, you can enable this feature through the following steps:
Start HPC PowerShell as an administrator.
View the current configuration of the AutoGrowShrink property by running the following command:
Get-HpcClusterProperty –AutoGrowShrink
Enable or disable “AutoGrowShrink” by running the following command:
Set-HpcClusterProperty –EnableGrowShrink <1 | 0>
Change the grow interval (in minutes) by running the following command:
Set-HpcClusterProperty –GrowInterval <interval>
Change the shrink interval (in munites) by running the following command:
Set-HpcClusterProperty –ShrinkInterval <interval>
Cluster deployment with Azure quickstart templates
The HPC Pack team has contributed several Azure quickstart templates to help customers with specifc needs deploy HPC clusters in Azure Resource Manager. The templates include:
Generic HPC Pack cluster with a clean installation of Windows Server on compute nodes.
HPC Pack cluster with customized compute node images.
For more details and instructions, go to Azure Quickstart Templates, and search for the keyword “HPC” to find the one you need.
SOA improvements
Support for basicHttpBinding as a transport scheme for creating SOA sessions, sending requests and getting responses. Besides the basicHttpBinding, the Azure Storage queue is also utilized as a transport medium to improve performance and scalability.
Support for running SOA clients on a machine outside of the cluster domain either with NetTcp or Https binding. For example, an on-premises SOA client can now communicate with an HPC Pack cluster in Azure IaaS.
Support for Azure data movement for SOA sessions. After setting the Azure storage connection string on the cluster, using SessionStartInfo.DependFiles will help move the files on the client machine to the %HPC_SOADATAJOBDIR% folder on an IaaS head node via Azure storage blobs. The same data file for a given user will only be uploaded and downloaded to the data cache on the head node once, and then copied to %HPC_SOADATAJOBDIR% folder for each session to consume.
SOA message UniqueId can be explicitly specified when sending messages using broker clients.
SOA service versioning is expanded from major.minor to the full version format major.minor.build.revision.
SOA jobs can be viewed from HPC Job Manager.
SOA message level tracing now supports HTTP binding.
Common Data blob download timeout is changed as a configurable parameter in the service dll configuration file.
Other performance and scalability improvements.
Other improvements
Support for reserved public IP address for bursting to Azure - In Update 2, we introduce support for a reserved public IP address for each Azure cloud service endpoint used in Azure “burst” deployments. This is to help customers who have a strong requirement for a firewall rule that all the traffic has to bind to a reserved IP address. So to configure Azure “burst” nodes, the endpoint Azure deployment has to bind to a static IP address. Otherwise, all the traffic will be blocked by the firewall.
More views in HPC Job Manager – Update 2 adds a SOA jobs view, heat map view, and a monitoring chart view.
Suspend a running job - Starting in Update 2 you can suspend a running job. Previously, if you wanted to empty the cluster for some important jobs, you had to cancel the running jobs, and jobs entered the Canceled state. In Update 2, you can set the holduntil property on a running job; the job will stop dispatching new tasks to nodes, and becomes Queued after the all the running tasks finish. It won’t be scheduled until the time set on the holduntil property. You can set the holduntil property on a running job inthe following ways:
HPC command: job modify {jobid} /holduntil:{holduntiltime}
HPC PowerShell: Set-HpcJob {jobid} –Holduntil {holduntiltime}
Job management GUI: Select a running Job, perform Modify Action, and change the HoldUntil setting on the Advanced page to a later time.
Azure SDK 2.5 – For Azure “burst” deployments we upgraded our Azure SDK version from 2.2 to 2.5 to improve reliability and to stop using the to-be-deprecated REST API in the Azure Storage service (details here). We recommend our users to migrate to this version as soon as possible if you deploy Azure “burst” nodes.
Kerberos constrained delegation support - For this to work, your software needs to obtain the User Principal Name (UPN) of the user requesting the job. Then it impersonates this user, connects to the HPC scheduler, and submits the job, using the HPC Class Library. A prerequisite is to set up account delegation.
MS-MPI v6 - We integrate with the latest Microsoft MPI version, MS-MPI v6 (download here).