The Web supercomputing environment

Nikola B. Serbedzija

GMD FIRST, Rudower Chaussee 5, D-12489 Berlin

Abstract
The Web supercomputing environment provides Web access to the MANNA supercomputer. It is developed within a wider framework whose aim is to make computing resources, both hardware and software, available to the Internet users. The core of the system is the Web-MANNA server with a number of functions offered to anonymous Web users.

Keywords
Web-based computing; Supercomputing; Distributed systems

1. Web-computing environment

Web computing can be defined as a special kind of distributed (client/server) computing that involves Internet-based collaboration of several remotely located programs and uses a standard Web browser as a user interface. Contrary to the "classical" distributed components it requires dynamic functionalities that can be easily migrated and executed on any machine connected to the Web. Web supercomputing favours thin machines at clients and supercomputers at servers' sides. This work presents how the MANNA supercomputer is included in the already existing Web computing framework enriching it with supercomputing capabilities.

In order to accomplish Web computing, a framework called "Web Computing Skeleton" [2] has been developed with the following objectives: (1) to enrich Web sites with software; (2) to offer computing power to Web users; (3) to enable wide access to certain applications; (4) to provide world wide distributed computing. A few application programs have been included in the skeleton [3] and a number of new Java-based applications are in preparation for inclusion.

Besides the provision of Web-enabling software components, a further extension has currently been introduced to allow Web access to the MANNA supercomputer.

2. The Web computing skeleton

The Web computing skeleton is a general-purpose distributed program whose main task is to establish necessary Internet connections and enable Web collaboration between different remotely located software objects. Initially, it is an empty template that enables communication and synchronization among Web-based servers and anonymous Web clients. The actual functionality is obtained by embedding application programs into the skeleton and by providing appropriate interface to these programs [3].

Internally, the Web computing skeleton consists of four major parts:
Mobile code A set of Java applets which play a role of the skeleton clients.
Server code A daemon-like program that waits to be called by its mobile clients. The server maintains a dynamic directory of available services.
Appi interface A set of procedures that provide communication and synchronization with the local Web-enabled application programs.
Appi programs A set of the existing local programs that are offered for the Internet use.

The Web computing skeleton is programmed in Java and uses the Remote Method Invocation (RMI) mechanism [4] for collaboration among its components. With such a design, the Web computing skeleton is a data-driven template with the built-in functions for further extensions.

3. The MANNA architecture

The MANNA supercomputer design [1] pioneered the concept of hiding the message-passing latency by overlapping computation and communication in a two-processor node and the multi-level crossbar interconnect that provides maximum connectivity at minimum cost. The result is a massively parallel, scalable parallel computer that surpasses most of comparable commercial machines in terms of sustained performance.

MANNA Version 2.0 (featuring 2 i860XP processors per node) has reached in 1994 product maturity. There is a range of system software developments associated with the MANNA computer, from operating system, compilers, parallel programming languages to high-performance applications.

Fig. 1. The WebMANNA framework.

4. The Web-MANNA server

The Web supercomputing environment is a multi-tier architecture with the Web-MANNA (WM) server in its centre, WM clients at one and the MANNA computer at another end (see Fig. 1). The Web-MANNA server is added to the skeleton like yet another application program (with Web-MANNA terminal as a user interface), providing the user with a possibility to login to the MANNA system. The login procedure creates an independent session at the MANNA machines which is controlled by the Web-MANNA server.

The major role of the WM server is to dynamically (upon request) create WM clients and provide them with available services. Some of the most important WM server functions are:

The WM server maintains all state information about users and their associated sessions. When users connect to the WM server, after authentication, the server checks if there is already a running session and resumes it or initiates a new session. Initiating or resuming a WM session means sending WM terminal applet to the user together with the state information and available functionalities.

A Case study has been prepared to illustrate the flow and functioning of a sample WM session. Some of the functions are: (1) log(in/out) procedures; (2) displaying WM terminal; (3) selecting available operations/applications; (4) up- and down loading files; (5) suspending and resuming WM session by disconnecting/reconnecting; (6) running demonstrator applications; (7) monitoring at a server side.

5. Discussion

The Web supercomputing environment with its Web-MANNA server is a part of a wider Web computing framework. The motivation for its development is to revive legacy software and high-performance applications through their Web enabling. Once it is completely finished it will be a stand alone system with the ability to offer both MANNA applications and MANNA supercomputer processing power to Web users. Some parts of the system still have to be improved, especially those concerning security for both WM clients and the WM server. Current limitations imposed by JVM (Java Virtual Machine) and the use of RMI and sockets for remote collaboration affect both efficiency and scaling of the environment and are the subjects for further work.

References

  1. Giloi, W.K., Towards the next generation parallel computers: MANNA and META, in: Proc. ZEUS '95, Linkoeping, Sweden, May 1995.
  2. N.B. Serbedzija, L. Botha, A. Abbott and J. Bishop, Web computing skeleton: a case study, in: Proc. PDSE97 at ICSE, Boston, May 1997, pp. 188–197.
  3. N.B. Serbedzija, Web-collaboration improves environmental simulations, in: Proc. Control'97, Cancun, May 1997, pp. 400–403.
  4. Sun Microsystems, Remote Method Invocation Specification, http://www.javasoft.com/products/JDK/1.1 /docs/guide/rmi/rmiTOC.doc.html