Installing Cactus for the GrADS Demo

There are two versions of this document. This version is for a plain vanilla Worm (not using any GrADS components). The other version is a version with the simple (UofC) Contract Manager from GrADS built in.

Cactus installs in the user space and requires almost nothing besides CVS. We will also need HDF5 for File I/O for our Worm/Tequila thorn.

Note: the only things required to be installed to be on the GrADS-Cactus testbed are:

It is not necessary for each team to install and run Cactus; however, GrADS members may want to see the program run (or may need to install it so that their own pieces can be tested). These directions are here to help step GrADS team members through a typical Cactus install using the specific setup that we will be using for the GrADS demo.

Here are the details on installing HDF5 from the Cactus folks:

   http://www.cactuscode.org/Documentation/HOWTO/HDF5-HOWTO

The cactus organization is at http://www.cactuscode.org

The entire process that I have below can be found at:

   http://www.cactuscode.org/Documentation/UsersGuideHTML

Other Cactus sites worth looking at:

The following instructions may be easier if you have perl:

  1. Download the script GetCactus from the Cactus web pages

    http://www.cactuscode.org/Download/GetCactus

  2. Download the thornlist WaveToyC.th from the Cactus web pages

    http://www.cactuscode.org/Download/ThornLists/WaveToyC.th

    Alternatively, download the thornlist FlopDialer.th from here (University of Chicago DSL lab)

    http://people.cs.uchicago.edu/~dangulo/grads/FlopDialer.th

    Why two applications? Cactus has "thorns," which allow for multiple applications to work interchangeably. We will do all testing with FlopDialer (and possibly WaveToyC), but we should be able to plug in any other application thorn with a very minimal amount of effort.

  3. Checkout the flesh and thorns using

    perl GetCactus WaveToyC.th

    or

    perl GetCactus FlopDialer.th

    At the prompts, use the default choices, except choose the Standard development version of Cactus

  4. Change directory

    cd Cactus

  5. Create a config file. See: http://www.cactuscode.org/Documentation/UsersGuideHTML/node9.html I did it on the command line (for the wavetoy app):

    make wavetoy-config DEBUG=yes  THORNLIST=../WaveToyC.th PROMPT=no

    or

    make flop-config DEBUG=yes  THORNLIST=../FlopDialer.th PROMPT=no

  6. Make the executable itself:

    make <config>

    For wavetoy (from the Cactus root dir):

    make wavetoy

    For FlopDialer (from the Cactus root dir):

    make flop

  7. Test to see if the executable was created correctly by running the testsuite:

    make <config>-testsuite

    for wavetoy (from the Cactus root dir):

    make wavetoy-testsuite

    for FlopDialer (from the Cactus root dir):

    make flop-testsuite

  8. Finally, you can run the application. The application should be in the exe dir inside of the Cactus root dir. Running it from the Cactus root dir has this format:

    exe/cactus_<config> <parfile>

    for wavetoy, the wavetoyc_rad.par parameter file is distributed with the app. So, you can run it like this (from the Cactus root dir):

    exe/cactus_wavetoy arrangements/CactusWave/WaveToyC/par/wavetoyc_rad.par

    for FlopDialer, you will want to obtain the parfile below

    for everything, the above instructions work only for single processor mode In order to run on multiple machines, you will have to use mpirun:

    mpirun -np x exe/cactus_<config> <parfile>

        where x is the number of processors

Miscellaneous

flop1.par

WormDesign.ps

Back to Dave Angulo´s GrADS page

Back to Dave Angulo´s home page