InterComm Documentation

1.6

Introduction

                                README

                             InterComm 1.6

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://www.cs.umd.edu/projects/hpsl/chaos/ResearchAreas/ic

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

                          INSTALLATION NOTES

                        InterComm Version 1.6

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, PVM_ARCH and PVM_BIN set during configuration. If 
are going to use MPI with InterComm, the environment variables 
MPI_BIN, MPI_INC, and MPI_LIB needed to be set for InterComm to 
function properly.

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.

   --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.

   --enable-f77

        This causes the Fortran 77 interface to be built (default).

   --enable-f90

        This causes the Fortran 90 interface to be built.

   --enable-tests

        This causes the test scripts to be built to ensure the installation 
        is successful.

   --enable-mpi

        This causes the test cases using mpi to be built (default). If
        --with-ppp=DIR is used, this will be enabled automatically.

   --enable-debug

        This causes the debug statements to be shown while using InterComm
        to help fun the source of problems.

-------------------------------------------------------------------------
Department of Computer Science, University of Maryland, 
A.V. Williams Building, College Park, MD 20742.

Generated on Mon Jun 4 14:42:40 2007 for InterComm by  doxygen 1.4.6