Mckenzie Chombo + ChomboVis Installation


  • Compilers: Intel Fortran / C / C++ , version 8.0
  • MPI implementation: LAM 7.1.2b20
  • hdf5 library: hdf5-1.6.4
  • Chombo library: Chombo 1.4
  • --make sure you get the latest version!


    For Mckenzie users, you should be using switcher compiler = intel-8.0.

    First make sure the Intel compilers are properly installed and the appropriate environment configuration files are sourced.

    Build LAM with the following:

    ./configure CC=icc CXX=icpc FC=ifort CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" --prefix=/home/merz/lib/lam-7.1.2b20
    make install

    Make sure to set your prefix to the desired location. In particular note the CFLAGS, which enable large file support. This is not necessary for hdf5, but desirable. Before you continue you should set your $PATH to find your new LAM executables first, which can be done in csh with:

    setenv PATH '/home/merz/lib/lam-7.1.2b20/bin/:'$PATH

    using my prefix path as an example.

    Next build a parallel and serial hdf5 library. On Mckenzie a global serial hdf5 library can be found in /opt, choose the most recent. To build parallel hdf5:

    ./configure --enable-fortran --enable-cxx --enable-parallel --enable-production CXX=mpiCC F9X=mpif77 CC=mpicc "CFLAGS=-O3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" --prefix=/home/merz/lib/phdf5-1.6.4
    make check
    make install

    As before make sure set prefix to the desired location. If the test fails because you are using an nfs filesystem it may be due to not using the noac nfs option, and you can quickly test by setting $HDF5_PARAPREFIX to a local ext3 filesystem. The Fortran and C++ wrappers to the library are optional and not necessary for Chombo.

    Now it is time to install Chombo. First edit the Make.defs.local file to apply the following changes:

    CXX = icpc
    FC = ifort
    MPI = TRUE
    MPICXX = mpiCC
    HDFINCFLAGS = -I/opt/hdf5-oscar-1.6.3/include
    HDFLIBFLAGS = -L/opt/hdf5-oscar-1.6.3/lib -lhdf5 -lz
    HDFMPIINCFLAGS= -I/home/merz/lib/phdf5-1.6.4/include
    HDFMPILIBFLAGS= -L/home/merz/lib/phdf5-1.6.4/lib -lhdf5 -lz
    EMT =

    Make sure that the HDF library and include file paths are set to agree with where you have them installed. This file also controls debug/optimization selection and compiler flags to support these modes. I have found that if I set DIM=3 that there is a problem with the chombo fortran pre-processor and $CHOMBO_HOME/lib/src/BoxTools/STATE.H had to be edited to have all comments removed. I have also found that DEBUG=FALSE causes a Makefile conflict - a quick workaround is to edit $CHOMBO_HOME/lib/mk/Make.defs.default to hardwire DEBUG=FALSE. Continue building the library, testing programs, and then run them:

    make lib
    make test
    make run

    If the tests all pass correctly you should be ready to begin!


    Download and untar the "ChomboVis and Everything" package. ChomboVis will not compile using the current version of gcc on Mckenzie and as such one should perform the following after untarring the package:

    make gcc
    setenv PATH '/scratch/merz/Chombo/ChomboVis-4.8.10-and-everything/usr/bin/:'$PATH
    make all

    Where the PATH variable has been updated in a csh compatable shell to point to the location where the 3.3 version of gcc has been installed. Now you should be able to cd into that path to find the chombovis executable. You should be able to launch it from any of the devel nodes or hosehead and then load in the sample data sets that are contained in the ChomboVis directory labelled data.

    Updated 050516