The High-Performance Computing (HPC) FrameWork is an object-oriented system that is designed to allow users to develop and execute HPC codes on geographically distributed high-performance computer (HPC) systems. The architecture was developed to support a set of image processing applications but can adapt to additional HPC application domains. Over the last year, an initial implementation of the system has been redeveloped using emerging object-oriented technologies.
The FrameWork's Kerberos-based client authentication services, initially implemented in C++, were replaced by a Java Server Pages (JSP) approach, based on the Globus Toolkit. Using the Gateway Portal project software enables future development of Grid capabilities for the FrameWork and establishes it as a Grid portal for HPC applications. Most client functionality is C++ code invoked by JSP Java Beans.
An HPC code adaptor object has been significantly refactored following successful alpha testing of the FrameWork. Initially, we only supported simple parameters for each of the HPC codes and ignored diverse sets of outputs for each of the codes. Redeveloping objects for two of the HPC codes to address these issues required a lot of expertise and understanding of the code which proved expensive. The refactored code adaptor object allows developers to focus on their input and output requirements. Using an XML description of input parameters and HPC code outputs further reduces the programming effort required.
This demonstration will follow a processing request through the system and then discuss C++/JSP/Grid portal client implementation issues and illustrate our approach to developing the HPC code adaptor object.
Keywords: Globus Toolkit, Grid, Gateway Portal, Refactoring, CGI, JSP, XML, HPC, Kerberos, Java Beans