Paradise: Technical Overview
Paradise is SCAI's most flexible and powerful parallel and
distributed computing environment. It is based upon the same virtual shared memory (VSM) models as SCAI's other
parallel computing products, Linda and Piranha; however, Paradise can support many VSMs
shared among multiple independent applications. Paradise applications can
run on vastly different kinds of computers (including PCs), and since Paradise's
VSMs can be persistent, the applications need not even run at the same time.
Paradise can be used to create "ensemble applications" from separate,
independent programs. For example, data from a mainframe database application
might be placed into a VSM either as it is collected, or on a periodic basis. A
separate visualization application could retrieve the data from the VSM and
display it graphically. The two applications could run concurrently, in which
case the visualization application would provide a live snapshot of the data.
But, they also could run at completely separate times, with the visualization
application displaying, for example, summary information about data collected
the previous day.
Other applications could also use exactly the same data
without any requirement for replication. In the illustration below, two other
programs access the mainframe database's data: a scenario simulation program
running on a parallel multiprocessor, and a data mining application running on a
heterogeneous cluster. The latter application has been parallelized with Piranha
to take advantage of the significant amount of unused computing potential on the
cluster. Each parallel program shares data via the common VSM, but performs its
own computations using a private VSM.
We support most Unix, Linux and Windows platforms. Please contact Scientific Computing Associates for details.
Paradise can provide as many VSMs as desired. To
continue the example, the same visualization application could also be used to
examine data from a different database system by accessing the data placed in a
second sharable VSM. Other applications might also use this second common data
space, either separately or in concert.
Existing programs require only
modest modifications in order to take advantage of Paradise's capabilities.
Paradise adds a few simple operations to a native high-level programming
language, while taking care of all of the low-level details of interprocess
communication and VSM management automatically. This makes Paradise easy to
learn and to use, and fully protects existing investments in programmer training
and application development.