Parallel computing is starting to move from the laboratory to the mainstream.
However, effort thus far has been focused on scientific problems and
towards UNIX platforms.
Moreover,
parallel computing has traditionally relied on specialized hardware
and custom software.
We have developed the PCHASM (Parallel Commodity Hardware And Software
Machine) laboratory to transition parallel computing technology to commodity
hardware and software.
PCHASM will help to bridge the gap between high performance and personal
computing.
The laboratory seeks to apply ideas developed in the
high-end scientific computing area to be applied to commercial applications
including databases and mixed media.
It consists of a network of commodity personal computers
connected by a high speed LAN.
Connectivity is currently provided by 100 Mbit Ethernet.
In the Spring of 1996 we plan to agument the lab ATM connectivity.
Th lab will also be linked to our multiprocessor
architectures (the IBM SP-2 and the Digital Alpha 2100 MP cluster) via
the ATM network.
A key purpose of this laboratory is to provide a parallel computing environment
based on commodity hardware and software.
In recent years, high performance computing has been moving
towards the use of commodity parts.
The Thinking Machines CM-5 and Intel Paragon represent the first wave of this
trend -- employing commodity processors, but using custom
hardware at the board level.
The second wave, represented by the IBM SP-2, uses general purpose
workstations but relies on custom hardware for the
interconnection network.
For software, most parallel machines run customized versions of the
UNIX operating system.
The next step in this trend of leveraging commodity components is to employ
the huge economy of scale in the personal computer
market to build parallel computers.
The laboratory uses both commodity hardware and software.
We run Microsoft Windows (NT and Windows 95) as the base
operating systems, and
exploit the extensibility features of these operating system to create
a parallel computing environment using a network of workstations.
By using Windows as a base environment we can both leverage the
development effort required to create a robust operating system
and also provide a
parallel computing environment that is compatible and consistent with
the desktop environment.
One of the key research issues we plan to address is the development of tools
that facilitate the integration of applications using
Microsoft's Win32 API with data parallel modules.
The Win32 applications will
run on the PCHASM machines, and the data parallel modules will run
either on the
PCHASM network or on our UNIX based multiprocessor platforms.
Applications developed for the commodity software market feature
increasingly sophisticated graphical and multimedia user interfaces.
The development of graphical and multimedia interfaces
can be a complex and time consuming enterprise.
Application developers
currently must choose between making use of sophisticated user
interfaces and data parallelism.
Applications with sophisticated
graphical user interfaces are generally built using tools that are
available on Windows, OS/2 and Macintosh platforms; high performance
data parallel applications are typically developed on UNIX platforms.
To facilitate the development of parallel applications with advanced user
interfaces and to make data parallel modules available to
commercial applications developers,
we are developing software to link applications running on Win32 platforms
to parallel applications running on UNIX platforms.
The system we plan to develop can couple programs running on any combination
microcomputers or workstations with distributed or shared memory.