-
Notifications
You must be signed in to change notification settings - Fork 5
Building on ALCF Mira
Cameron Smith edited this page Jan 17, 2018
·
6 revisions
git clone [email protected]:cwsmith/phastaChef.git
cd phastaChef
git clone [email protected]:PHASTA/phasta.git
envXl.sh
environment
resoft
soft delete @ibm-compilers-default
soft add @ibm-compilers-2016-05
soft add +mpiwrapper-xl
soft add +cmake
export DARSHAN_DISABLE=1
version=12.0-170408dev-bgq_xl
sim=/projects/TRAssembly_2/cwsmith/software/simmetrix/
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$sim/$version/
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$sim/$version/lib/bgq_xl/
coreDeps=/projects/TRAssembly_2/cwsmith/coreDeps/
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$coreDeps/zoltan/3.81/xl
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$coreDeps/parmetis/4.0.3/xl
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:$coreDeps/bzip/1.0.6/xl
BGQ-XLMPI-toolchain.may2016
toolchain
set(CMAKE_SYSTEM_NAME BlueGeneQ-static)
set(COMPILER_SEARCH_PATHS
/bgsys/drivers/ppcfloor/comm/xl/bin
/soft/compilers/ibmcmp-may2016/vac/bg/12.1/bin/
/soft/compilers/ibmcmp-may2016/xlf/bg/14.1/bin/
/soft/compilers/ibmcmp-may2016/vacpp/bg/12.1/bin/)
find_program(CMAKE_C_COMPILER mpicc ${COMPILER_SEARCH_PATHS} )
find_program(CMAKE_CXX_COMPILER mpicxx ${COMPILER_SEARCH_PATHS} )
find_program(CMAKE_Fortran_COMPILER mpif90 ${COMPILER_SEARCH_PATHS} )
find_program(CMAKE_C_LINK_EXECUTABLE mpicc ${COMPILER_SEARCH_PATHS} )
find_program(CMAKE_CXX_LINK_EXECUTABLE mpicxx ${COMPILER_SEARCH_PATHS} )
find_program(CMAKE_Fortran_LINK_EXECUTABLE mpif90 ${COMPILER_SEARCH_PATHS} )
SET_PROPERTY(GLOBAL PROPERTY TARGET_SUPPORTS_SHARED_LIBS FALSE)
SET_PROPERTY(GLOBAL PROPERTY TARGET_ARCHIVES_MAY_BE_SHARED_LIBS FALSE)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
doConfigureXlOptGstrict
cmake configure script
#!/bin/bash -ex
opt='-g -O2 -qstrict -qminimaltoc '
les=/path/to/libles.a
toolchain=/path/to/BGQ-XLMPI-toolchain.may2016
cmake .. \
-DCMAKE_TOOLCHAIN_FILE=$toolchain \
-DCMAKE_C_FLAGS="$opt" \
-DCMAKE_CXX_FLAGS="$opt" \
-DCMAKE_Fortran_FLAGS="$opt" \
-DCMAKE_INSTALL_PREFIX=$PWD/install/ \
\
-DSCOREC_PREFIX=/path/to/core/install \
\
-DPHASTA_SRC_DIR=/path/to/phasta/source \
-DPHASTA_INCOMPRESSIBLE=ON \
-DPHASTA_COMPRESSIBLE=ON \
-DPHASTA_USE_LESLIB=ON \
-DPHASTA_USE_SVLS=OFF \
-DPHASTA_USE_PETSC=OFF \
-DLESLIB=$les \
$d/phastaChef/
make