README
InterComm 1.1
InterComm is a framework for coupling distributed memory parallel
components. It enables efficient communication in the presence of
complex data distributions. In many modern scientific applications,
multiple parallel and/or sequential components need to cooperate
to solve a complex problem. These components often use different
languages and different libaries to parallelize their data. InterComm
provides abstractions that work across these differences to provide
an easy, efficient, and flexible means to move data directly from one
component's data structure to another.
Currently, InterComm supports components written in C, Fortran77, C++,
and Fortran90. Data parallel library support is provided for Chaos,
MultiBlockParti, and P++.
For a more technical discussion of the InterComm architecture and
performance, please see the papers available at:
http:
Instructions on installation and use can be found in the INSTALL file.
-------------------------------------------------------------------------
Department of Computer Science, University of Maryland,
A.V. Williams Building, College Park, MD 20742.
INSTALLATION NOTES
InterComm Version 1.1
InterComm depends on PVM for communication, so the first step is
to insure that you have a working and properly configured installation
of PVM available. In particular, InterComm will need the environment
variables PVM_ROOT and PVM_ARCH set during configuration.
InterComm uses the GNU Autotools suite for building and installation.
Generally, this involves the sequence of commands:
./configure
make
make install
The 'configure' command takes a number of options, use of the '--help'
flag will provide a full list of those available. Options that are
specific to InterComm are:
--with-chaos=DIR
This causes the Chaos extensions to be built. DIR specifies
where the Chaos headers and libraries can be found.
--with-mbp=DIR
This causes the MultiBlockParti extensions to be built. DIR
specifies where the MultiBlockParti headers and libraries
can be found.
--enable-f77
This causes the Fortran 77 interface to be built (default).
--enable-f90
This causes the Fortran 90 interface to be built.
--with-ppp=DIR
This causes the C++/P++ interface to be built. DIR specifies
where the P++ headers and libraries can be found.
NOTE: The P++ source MUST be modified to expose the underlying
PARTI descriptor to InterComm. This is done by making the
pPARTI_Descriptor member of the PADRE_Descriptor class public.
See line 445 in A++P++-0.7.9d/P++/PADRE/src/PADRE_Descriptor.h.
-------------------------------------------------------------------------
Department of Computer Science, University of Maryland,
A.V. Williams Building, College Park, MD 20742.