The article from HPCwire on Microsoft Injects More Goodies into Windows HPC highlights some of the new features in beta2. I’m especially happy to see the support for Win7 desktops as computational nodes – desktop cycle stealing, something that always gets asked about. The other key additions being:
- VS2010 integration
- Parallel Nsight, NVIDIA's software development toolset for GPU computing that is offered as a Visual Studio plugin
- New services for Excel 2010
- Adds compatibility with mixed-OS cluster management platforms from Adaptive Computing, Clustercorp and Platform Computing.
For example, Microsoft has added the ability to aggregate Windows 7 workstations into an HPC cluster. Essentially, each workstation is monitored and managed as an ad-hoc compute node within a traditional cluster. Capabilities like time-of-day scheduling and shutting down of preemptive jobs are included so that the machine can be made available to a real live person when required. The common scenario is one where an organization has a small cluster made up of say dozens of servers, along with perhaps hundreds of Windows 7 PCs sitting idle at night.
Since these workstations are likely to be hooked up to the LAN via a high-latency Ethernet connection, the type of HPC workloads that can be run on them is somewhat more limited than that of a typical InfiniBand-connected cluster. In theory, any highly parallel but loosely coupled application would be suitable. If you have such a setup, you can essentially add a night-time cluster for free (well, at least for the cost of the power to run it).
The next big enhancement is the integration with Visual Studio 2010, which is due to be launched next week. This new version of Visual Studio contains lots of support for creating, testing and deploying parallel apps. It includes the hooks for Microsoft's MPI, SOA-type execution, and new services for Excel 2010. Mendillo characterized the integration between Visual Studio and Windows HPC Server as a "big breakthrough moment." He may be right. Visual Studio has over 7.5 million users today, which is the largest user base for any software development suite. Given that, the ability to program from the client across the cluster is a big deal.
The Excel tool has received special attention since it has become a fairly widespread tool for HPC-types -- scientists, engineers, financial quants, and the like. Basically, Microsoft has layered HPC services on top of vanilla Excel so that users can distribute computations across a cluster. Mendillo says there are a lot of Excel applications that are suited to this type of parallelization. One example is a life insurance actuarial calculation. On a workstation, a typical such calculation could take 14 hours. Mendillo claims distributing that work across a small cluster -- say 16 to 32-nodes -- cuts that time down to two and a half minutes. Microsoft is partnering with integrators Wipro, Infusion and Grid Dynamics to help customers migrate their Excel workbooks and develop new parallelized apps.
Along these same lines comes Parallel Nsight, NVIDIA's software development toolset for GPU computing that is offered as a Visual Studio plugin. Microsoft has been working with NVIDIA on this for a while, but the software maker's big contribution is low-level GPU support on the server side so that everything works seamlessly end-to-end. The whole package allows programmers to develop, test, and run GPU-accelerated applications, all with the Windows universe. This has the makings of a nice synergy for both vendors as it allows NVIDIA to piggy-back on the ubiquity of Visual Studio and gives Microsoft a GPU development capability alongside its CPU toolset.
The last piece of the puzzle for Windows in HPC is Linux interoperability. Although some dual-boot operating system capability has been there in the past, the beta release adds compatibility with mixed-OS cluster management platforms from Adaptive Computing, Clustercorp and Platform Computing. This allows the system admin to statically boot specific nodes with Linux or Windows. In the case of Platform Computing, dynamic OS provisioning can be supported via the company's ISF Adaptive Cluster platform. The whole idea here is to be able to serve Windows and Linux HPC apps on the same hardware, and to do so as transparently as possible. This is a must-have feature for Microsoft, inasmuch as HPC customers have come to expect Linux as the default OS.
If any of this arouses your interest, Microsoft is making the beta available for downloading on its Windows HPC Server trial site. There could be another beta round says Mendillo, or they may go straight to the final release. In either case, he expects the Windows HPC Server 2008 R2 product to be shipping later in the fall.