What Is Included in the HPC Services for Excel
Applies To: Windows HPC Server 2008 R2
HPC Services for Excel include service-oriented architecture (SOA) clients and services that enable developers to quickly convert workbooks to run on a cluster. The cluster-side features are available with the Enterprise Edition of HPC Pack 2008 R2. The client-side and developer features are available in the HPC Pack 2008 R2 client utilities and the HPC Pack software development kit (SDK).
The features in HPC Services for Excel support offloading user-defined functions (UDFs) or entire workbooks to a cluster. The following table describes the offloading scenarios, and the client and cluster features that support them.
|Offloading scenario||Client feature||Cluster feature|
- The UDFs must be registered as cluster-safe and contained in an XLL file.
- A cluster administrator can deploy the XLLs to the cluster.
- Excel users can run a workbook on their computer, and cluster nodes can calculate the UDF calls and return results to the workbook.
|Excel Cluster Connector: An add-in to Microsoft Excel 2010 that supports UDF offloading to a Windows HPC 2008 R2 cluster. The connector starts a session on the cluster and instantiates an SOA client for the container services on the cluster. The Excel user can specify the cluster name and other optional job submission parameters.||XLL container services: Load and run cluster-safe UDFs from XLL files that are deployed to the cluster. Note: The UDFs that run on the cluster do not run in Excel 2010. |
UDF Service Loading Test: Verifies that the container services can be loaded, and optionally verifies that a specified XLL file can be hosted.
- An Excel developer uses the HPC macro framework to define how to partition independent calculations in a workbook and then merge the results. The macro framework integrates with the built-in Excel Client.
- A cluster administrator can deploy the workbook to the cluster.
- When the Excel user starts the workbook calculation, some of the macros run on the client computer, and the primary calculation macro runs on one or more instances of the workbook that are loaded on the cluster.
|Excel Client: A built-in SOA client that supports workbook offloading to a Windows HPC 2008 R2 cluster. Developers can include VBA code in the Excel workbook to specify the cluster name and other optional job submission parameters, and then pass calculations to the cluster through Excel Client.||Excel Service: Loads and runs Excel 2010 workbooks that are deployed to the cluster. Note: Excel 2010 must be installed on the compute nodes. |
Excel Workbook Configuration Test: Verifies that Excel 2010 is installed and activated on the specified nodes, that the Excel Service can be loaded, and that Excel Service can launch Excel.
The cluster-side features of HPC Services for Excel include the services and two diagnostics tests to verify service functionality.
When you install the Enterprise Edition of HPC Pack 2008 R2 on your cluster, the configuration files for the HPC Excel Services are centrally deployed to the head node. You can manage centrally deployed service configuration files from the Services pane in HPC Cluster Manager. The DLLs for the HPC Excel Services are installed on the compute nodes and workstation nodes.
The following list describes the services:
XLL container services (32 and 64-bit): Load and run cluster-safe UDFs from 32 or 64-bit XLL files that are deployed to the cluster. The UDFs that run on the cluster do not run in Excel 2010. The container services provide a minimum run environment that allows the UDFs to run on cluster nodes. UDFs running in a Windows HPC cluster do not support the Excel application programming interface (API), and do not support all Excel calls.
Excel Service: Loads and runs Excel 2010 workbooks that are deployed to the cluster. Excel Service starts Microsoft Excel 2010 on a cluster node, loads the workbook, invokes the specified macro using supplied inputs, and returns the macro result to the client. Using the Excel object model, the service can read from and write to the workbook, and it can trigger calculation of the workbook. If the workbook uses a VBA method to run a calculation, Excel Service can call the VBA method with input data and return the result to the client when the calculation is complete.
The following screenshot shows HPC Excel services in the Services view in HPC Cluster Manager:
HPC Services for Excel include two diagnostic tests: the UDF Service Loading Test and the Excel Workbook Configuration Test. These tests verify that UDF and workbook services can be loaded, initialized, and started on the specified nodes. The workbook test also verifies that Excel 2010 is installed and activated. Optionally, the UDF test can also verify that a specified XLL file and its detected dependencies are present.
The following screenshot illustrates the dialog box for running the Excel diagnostic tests in HPC Cluster Manager. In the screenshot, the Configure Test Parameters tab is selected, and an XLL file named myXLL has been specified as a parameter for the UDF Service Loading Test:
The client-side features of HPC Services for Excel include features that support UDF and workbook offloading to the cluster. These features are included in the HPC Pack 2008 R2 client utilities.
The Excel Cluster Connector for Microsoft HPC Pack 2008 R2 is an add-in to Microsoft Excel 2010 that supports UDF offloading to a Windows HPC 2008 R2 cluster. The connector leverages new capabilities for UDF execution that are provided in Excel 2010. The cluster connector submits the job to the cluster with the Excel user’s credentials and starts a session with a broker node. The job includes a Service tasks that invokes the XLL container service on the cluster, sends calculation requests, and receives results back from the cluster.
In Excel 2010, users can enable UDFs to run on a cluster. After a user installs the HPC Pack client utilities, the 32-bit or the 64-bit connector becomes available in a drop-down list (in the Advanced tab in the Excel Options dialog box). The user can specify the head node name and the job template in the Excel Cluster Connector dialog box. The following screenshot illustrates the Excel Cluster Connector dialog box:
The cluster connector also provides a message box that communicates the progress of the cluster calculation. The following screenshot shows the progress message box. In the screenshot, the title bar displays the name of the cluster that is performing the calculations, in this case myHeadNode. The message and the progress bar indicate the number of messages that are being sent and received.
For more information, see Using the Excel Cluster Connector to Offload UDFs.
The Excel Client is a built-in SOA client that supports workbook offloading to a Windows HPC 2008 R2 cluster. To enable a workbook to run in parallel on a cluster, an Excel developer can use the HPC macro framework to define how to partition independent calculations in a workbook and then merge the results. The macro framework integrates with the built-in Excel Client. The Excel Client invokes the Excel Service on the cluster and specifies which workbook to calculate and what parameters or options to use, and the Excel Client receives results when the calculation is complete. Developers include code in the Excel workbook to submit a job to the cluster, start a session with a broker node, and create an instance of Excel Client.
The HPC Pack client utilities include the HPC DLLs that are required to convert a workbook to use the macro framework. The HPC SDK includes a module that provides the outline of the macro framework code and a module that includes the outline of the code that starts a session on the cluster and creates an instance of the client. Many resources and samples are available to help developers create cluster-enabled workbooks.
How the Excel user specifies the cluster name, the workbook location, and any additional job submission specifications depends on how the developer implements the interface. The following screenshot shows an example from the HPC SDK samples. In this implementation, the developer adds and HPC ribbon to Excel that allows users to specify cluster information and includes options to run the calculations locally or on the cluster:
Windows HPC and Microsoft Excel Survival Guide on TechNet Wiki (http://go.microsoft.com/fwlink/?LinkId=198462)