Appendix B. Building the CCA Tools and TAU, and Setting Up Your Environment

$Revision: 1.22 $

$Date: 2005/09/22 22:08:26 $

Table of Contents

B.1. The CCA Tools
B.1.1. System Requirements
B.1.2. Downloading and Building the CCA Tools Package
B.2. The Ccaffeine GUI
B.2.1. System Requirements
B.2.2. Downloading and Setting Up the GUI
B.3. Downloading and Installing TAU
B.4. Setting Up Your Login Environment

The primary tools you'll be using are the Ccaffeine CCA framework and the Babel language interoperability tool. This section provides brief instructions on how to download and install a distribution of these tools (named, creatively enough, “cca-tools”) that has been tested for compatibility with the tutorial code. In Chapter 6, Using TAU to Monitor the Performance of Components you will be using the TAU performance observation tools in conjunction with the CCA, and if you plan to do that exercise, it will be necessary to install TAU on your system as well.

[Caution] Caution

These tools are still under development as we extend their capabilities. Consequently, it is possible to find numerous releases and snapshots of the individual tools, any given combination of which may not have been tested for compatibility. Don't use the individual tool distributions unless you've got a particular reason, usually based on direct conversations with their developers. The latest version of the “cca-tools” package is the recommended distribution for routine use and will provide you with a matched set of tools that will work together properly.

B.1. The CCA Tools

B.1.1. System Requirements

[Note] Note

We strongly recommend using a Linux platform to work through these exercises, since this is currently the most extensively tested and most easily supported platform for the CCA tools. If this is not possible, or you have a specific need to use another platform while working through these exercises, please contact us at to discuss the best way to proceed. We're also interested to hear what platforms you would like to run your CCA applications on in the longer term in order to help us focus our porting and testing efforts.

The requirements to build the CCA tools on Linux platforms are listed below. Requirements for other platforms will vary somewhat.

  • gcc >= 3.2

  • Java Software Development Kit >= 1.4. The java and javac commands must be in your execution path.

  • Gnome XML C Parser (libxml2) -- most recent Linux distro's already have it, regardless of whether Gnome is installed.

  • GNU autobuild tools: anything recent.

  • A connection to the internet. (A network connection is required both to download the code cca-tools package and during the build process.)

Additional Optional Software.  There are also a number of other packages which are not required in order to build the CCA tools, but can be used if present (and may be required in order to obtain certain functionality). If you want to use them, they should be installed before you begin to install the CCA tools.

  • MPI: recent versions of MPICH are known to work. At present, the automatic configuration tools do not handle other MPI implementations, and Ccaffeine has not yet been extensively tested against other implementations.

    [Note] Note

    At present, there are no exercises that require MPI.

  • Python >= 2.2 built with --enable-shared (on platforms that support shared libraries), and Numerical Python (NumPy). If you have multiple versions of Python installed and prefer to have a version in your execution path that does not meet the criteria above, you should set the PYTHON environment variable to point to a suitable version for the CCA tools prior to configuring them. You can check the python version with python -V.

  • Fortran 90: A variety of Fortran 90 compilers are supported. Because Babel needs to know about the format of the array descriptors used internally by the compiler, the CCA tools will have to be configured with both the path to the compiler and information about which compiler it is. Here is the list of currently supported compilers and the associated labels recognized by the CCA tools configuration script.

    Compiler CCA Tools “VENDOR” Label
    Absoft Absoft
    HP Compaq Fortran Alpha
    Cray Fortran Cray
    GNU gFortran GNU
    IBM XL Fortran IBMXL
    Intel v8 Intel
    Intel v7 Intel_7
    Lahey Lahey
    NAG NAG
    SGI MIPS Pro MIPSpro
    SUN Solaris SUNWspro

    You should have the compiler in your execution path, and any relevant .so libraries in your LD_LIBRARY_PATH. These are required to properly configure the CCA tools package.

B.1.2. Downloading and Building the CCA Tools Package

  1. The latest version of the CCA Tools package can be found at http://www.cca-forum.org/tutorials/#sources with a filename of the form cca-tools-version.tar.gz.

  2. Untar the cca-tools tar ball some place that is convenient to build and follow the instructions in the README to build it.

The CCA tools build procedure has been tested on a variety of systems with a range of different configuration options, and it works the majority of the time. However it is possible your platform or configuration requirements will confuse it, and it will not build properly for you. If this happens, please contact us at with the output of your attempt to configure and build the package, and any pertinent information about your system. We want to help you get a working CCA environment and improve the packaging of the tools for future users.