Expo/Computation/The Metacomputer

| Back | Map | Glossary | Information |

Communications Software

Communications Software Banner

Building the metacomputer is all about forging communications: between computer A and computer B, between computers and people, and between the people using the computers. Linking all the components so they work in unison requires advanced communications software.

Computer-to-Computer bridges


A unified computer family using the same kinds of processors, operating systems, and memory systems communicate easily with one another. For example, if you'd like a Connection Machine 5 and a Silicon Graphics workstation to work in tandem on a given problem, though, you've got to use message passing software. Message passing is one way by which distributed memory machines parcel out and exchange data among their various processors. Individual machines such as the CM-5 have their own software programs for message passing, but message passing between different machines requires special software like MPI (Message Passing Interface), a program which handles the message routing and data conversion between machines.

Many scientific problems are written in a language called Fortran, but it requires extensions specific for each particular machine's architecture. Computer vendors have addressed this problem by developing machine-specific software extensions that specify how data should be stored in memory and where code should be parallelized, so it can be in run on several processors at once. Unfortunately, such extensions can't be used with other types of machines; even moving to another machine made by the same vendor usually requires recoding.

In an effort to help address this problem, a group of computer scientists from several universities, national laboratories and commercial companies recently developed a Fortran "dialect" called High Performance Fortran (HPF), designed to run efficiently on any parallel machine, regardless of its architecture. Other computer scientists are developing a general, high-performance form of another popular programming language called C++. Both machine and software vendors have written compilers that can translate HPF or C++ commands into machine instructions that distribute the computation across processors, memory and networks.

Compilers are needed to generate instructions to distribute the computation across the processors, memory and networks; other kinds of software automatically manage the computer's input from and output to other computers, distributed mass storage, and data collection hardware such as microscopes or satellites.


Creating an easy-to-use interface between user and machines is critical to the success of the metacomputer. Possibly the best-known, and the most revolutionary user interface is NCSA Mosaic, a cyberspace browsing tool that opened the Internet to millions of people. People pointed and clicked their way to museum exhibits, Supreme Court decisions, Grateful Dead miscellany, and the latest satellite images from the U.S. Weather Service.

Mosaic and other browsers--most notably Netscape -seamlessly integrated text, image and data files; even movie and audio clips. The development of a new Web browser language called VRML (virtual reality markup language) is already enabling people to display 3-D images on the Web. Then there's "Hot Java". This innovative browser technology supports a multitude of interactive, Web-accessible applications, including computer simulations.

d Web browsers have made it incredibly easy to use the Internet, but some software developers aim to make it even simpler. They're creating languages that will allow users to create mobile agents-- so-called "intelligent" agents that can learn and act on the user's preferences. These programs are designed to go out on the network, search for and deliver data and connect with agents on other computers. Possible applications include making airline reservations, scheduling meetings, or finding everything that's been published on the life cycle of tapeworms.


Metacomputing technologies will make it easier than ever for geographically distant collaborators to work together. Improved collaborative software development is fast becoming a high priority. In 1992, NCSA released Collage, one of the first software programs that allowed people in different locations to display simulations, text, graphics, animation sequences, and analyze identical data, almost as easily as if they were working on the same machine. Collage was the first collaborative software to work across Unix, Macintosh and Windows platforms.

NCSA software developers are now developing methods that allow Mosaic users to carry on simultaneous interactions across the Internet. The "multi-Mosaic" would allow the present Internet users to make realtime presentations that reach across the globe. Collaborators using Mosaic will also be able to write messages, make annotations to existing Web documents, chat with each other, even control faraway instruments in realtime.

However, these emerging applications are raising concerns about security. With so many machines seamlessly connected, how can two collaborators be sure that their information is secure? For corporate users, information potentially worth millions of dollars may be at stake. NCSA has developed a new version of Mosaic, SecureMosaic, that converts normal text into a scrambled message that can be encrypted only by someone possessing the correct key. High performance computing centers, including NCSA, network vendors and many other major players in the emerging National Information Infrastructure are implementing a variety of such "firewalls" to stiffen the security of the Internet.

Return to the Parts of the Metacomputer

Exhibit Map
Information Center

Copyright, (c) 1995: Board of Trustees, University of Illinois

NCSA. Last modified 11/4/95.