A Web-based Development Environment for MPI Programs

Paraskevas Evripidou
George Samaras
Andreas Papagapiou
Neophytos Neophytou

The aim of this project is to develop a web-based enviroment (a collection of web-based tools) that will allow the development of MPI programs through the Web. These tools will enable the user to write, debug, run and evaluate the performance of Message Passing Interface (MPI) programs, using a usual java-enabled web browser. The tools will run satisfactory with a dial-up internet connection

Since the main idea of the whole project is to work through the web, Java was chosen as the implementation language because of its ability to run through a web browser. Also, Java is platform independent, offers multithreading capabilities, and in addition , GUIs are easy to build with Java.
CGI scripts are also used for implementing some support utilities as well as for some functions that couldn't be performed by the Java applets alone.

Net-console's tools

Account & File Manager
This is a collection of CGI-based utilities that enable the user to upload, list, delete and compile files in his account or change his password.

Net-med (Net-MPI editor) is an MPI-aware text editor. Its aim is to make writing MPI programs easier. It enables the user to create new programs or edit existing ones, without having to re-upload then in his account. Apart from that it offers some MPI specific functions, such as MPI command insertion, Send-Receive matching and help on the MPI commands.

Net-xec (Net-execution) is a Web-based execution console for MPI programs. It enables the user to execute MPI programs, watch the output and interact with them through the browser.
It also provides the option to monitor the percentage of each processor's use for the current program.

Net-dbx is a Java powered parallel debugger. It offers a friendly, graphical user interface to gdb, but its most important feature is that it offers group control on the debugging of processes

This tool provides some useful information that help the optimization of a program. These information include time for a command's completion, percentage of command use etc.

With this collection of tools, parallel program development could be done from a PC, with a friendly user interface, without having to use a Unix workstation or telnet on one.


Net-console home page

Contact me for additional information.