diff options
Diffstat (limited to 'bin')
-rw-r--r-- | bin/config_para_ibm_sp.sh | 88 | ||||
-rw-r--r-- | bin/config_para_tflops.sh | 58 |
2 files changed, 146 insertions, 0 deletions
diff --git a/bin/config_para_ibm_sp.sh b/bin/config_para_ibm_sp.sh new file mode 100644 index 0000000..b269527 --- /dev/null +++ b/bin/config_para_ibm_sp.sh @@ -0,0 +1,88 @@ +# How to create a parallel version of HDF5 on an IBM SP system +# that uses MPI and MPI-IO. + +# Unfortunately, the configure/make process to create the parallel version of +# HDF5 has not yet been automated to the same extent that the sequential +# version has. +# Read the INSTALL file to understand the configure/make process for the +# sequential (i.e., uniprocess) version of HDF5. +# The process for creating the parallel version of HDF5 using MPI-IO +# is similar, but first you will have to set up some environment variables +# with values specific to your local installation. +# The relevant variables are shown below, with values that work for LLNL's +# ASCI baby blue pacific SP as of the writing of these instructions (980210). + +# In addition to the environment variables, you _might_ also have to +# create a new file in the config directory. +# You will need to create this file only if the execution of the ./configure +# program aborts with an error after printing the message +# "checking whether byte ordering is bigendian..." +# +# If this is the case, create a new file in the config directory +# whose name is of the form architecture-vendor-OSversion +# (e.g., for baby blue pacific, this file is named powerpc-ibm-aix4.2.1.0) +# and which contains the line +# ac_cv_c_bigendian=${ac_cv_c_bigendian='yes'} +# if the target architecture is bigendian, or +# ac_cv_c_bigendian=${ac_cv_c_bigendian='no'} +# otherwise. +# Running the program ./bin/config.guess will print out the name +# of the new file you must create. + +# Don't try to make a parallel version of HDF5 from the same hdf5 root +# directory where you made a sequential version of HDF5 -- start with +# a fresh copy. +# Here are the flags you must set before running the ./configure program +# to create the parallel version of HDF5. +# (We use csh here, but of course you can adapt to whatever shell you like.) + +# compile for MPI jobs +setenv CC "/usr/local/mpich-1.1.2+romio_lgfiles/bin/mpicc" + +# +# next 4 for IBM mpi +# +#setenv CC /usr/lpp/ppe.poe/bin/mpcc_r + +# +# for both +# +setenv MP_PROCS 1 + + +# These compiler flags work on ASCI baby blue pacific (IBM SP), +# using IBM's MPI and Argonne's MPI-IO (ROMIO): +# -DHAVE_FUNCTION compiler accepts __FUNCTION__ notation +# -I/usr/local/mpio/include/ibm using ROMIO's MPI-IO header files +# +# The following flags are only needed when compiling/linking a user program +# for execution. +# -bI:/usr/include/piofs/piofs.exp this MPI-IO uses PIOFS file system +# -L/usr /local/mpio/lib/ibm -lmpio link to this MPI-IO lib +# +#setenv CFLAGS "-D_LARGE_FILES $CFLAGS" + +# The configure/make process needs to be able to run some programs, +# need to specify a processor pool. +# Also, don't prepend the process id in the output of the programs +# run by config/make. +setenv MP_RMPOOL 0 +setenv MP_LABELIO no + +# Once these variables are set to the proper values for your installation, +# you can run the configure program (i.e., ./configure) +# to set up the Makefiles, etc. +# After configuring, run the make as described in the INSTALL file. +# Once the configuration is complete, you can set any of your +# environment variables to whatever you like. + +# the files in the config directory, such as +# config/powerpc-ibm-aix4.2.1.0 +# config/powerpc-ibm-aix4.x +# config/powerpc-ibm-aix4.3.2.0 +# sometimes will need some help depending on subtlties of the installation + + +# When compiling and linking your application, don't forget to compile with +# mpcc and link to the MPI-IO library and the parallel version of the HDF5 +# library (that was created and installed with the configure/make process). diff --git a/bin/config_para_tflops.sh b/bin/config_para_tflops.sh new file mode 100644 index 0000000..7e94971 --- /dev/null +++ b/bin/config_para_tflops.sh @@ -0,0 +1,58 @@ +#! /bin/sh +# How to configure a parallel version of HDF5 on the Sandia National Laboratory +# TFLOPS System that uses MPI and MPI-IO. + +# Read the INSTALL_TFLOPS file to understand the configure/make process +# for the sequential (i.e., uniprocessor) version of HDF5. +# The process for creating the parallel version of HDF5 using MPI-IO +# is similar, but first you will have to set up some environment variables +# with values specific to your local installation. +# The relevant variables are shown below, with values that work for Sandia'a +# ASCI Red Tflops machine as of the writing of these instructions (980421). + +# Don't try to make a parallel version of HDF5 from the same hdf5 root +# directory where you made a sequential version of HDF5 -- start with +# a fresh copy. +# Here are the flags you must set before running the ./configure program +# to create the parallel version of HDF5. +# (We use sh here, but of course you can adapt to whatever shell you like.) + +# compile for MPI jobs +#CC=cicc + +# The following flags are only needed when compiling/linking a user program +# for execution. +# + +# Using the MPICH libary by Daniel Sands. +# It contains both MPI-1 and MPI-IO functions. +ROMIO="${HOME}/MPIO/mpich" +if [ ! -d $ROMIO ] +then + echo "ROMIO directory ($ROMIO) not found" + echo "Aborted" + exit 1 +fi +mpi1_inc="" +mpi1_lib="" +mpio_inc="-I$ROMIO/include" +mpio_lib="-L$ROMIO/lib" + + +MPI_INC="$mpi1_inc $mpio_inc" +MPI_LIB="$mpi1_lib $mpio_lib" + + +# Once these variables are set to the proper values for your installation, +# you can run the configure program (i.e., ./configure tflop --enable-parallel=mpio) +# to set up the Makefiles, etc. +# After configuring, run the make as described in the INSTALL file. + +# When compiling and linking your application, don't forget to compile with +# cicc and link to the MPI-IO library and the parallel version of the HDF5 +# library (that was created and installed with the configure/make process). + +CPPFLAGS=$MPI_INC \ +LDFLAGS=$MPI_LIB \ +LIBS="-lmpich" \ +./configure --enable-parallel tflop $@ |