-
Notifications
You must be signed in to change notification settings - Fork 4
build_on_perlmutter
jamesannis edited this page Apr 4, 2022
·
82 revisions
# working directory, use high performance shared area on perimeter
export TOP_DIR = /global/common/software/des/$(id --user --name)
export COSMOSIS_SRC_DIR=$TOP_DIR/cosmosis
export CSL_DIR=$TOP_DIR/cosmosis-standard-library
export TOPDIR=$TOP_DIR/y3_pipe_under
export Y3PIPE_DIR=$TOP_DIR/y3_cluster_cpp
export Y3_CLUSTER_WORK_DIR=$Y3PIPE_DIR/release-build
export Y3_CLUSTER_CPP_DIR=$Y3PIPE_DIR
export COSMOSIS_STANDRD_LIBRARY=$CSL_DIR
source setup-cosmosis-nersc cosmosis-global
salloc --nodes 1 --qos interactive --time 02:00:00 --constraint gpu --gpus 1 --account=des_g
cd $Y3PIPE_DIR/y1_rerun
srun -n1 cosmosis --mpi sigma_mort_mcubes.ini
do the exports and source setup-cosmosis-nersc, then
# get and make
https://github.com/Kitware/CMake/releases/download/v3.23.0/cmake-3.23.0-linux-x86_64.tar.gz
cluster toolkit
mkdir -p ${TOPDIR}/tmp
cd ${TOPDIR}/tmp
wget https://github.com/marcpaterno/cluster_toolkit/archive/master.tar.gz
tar xf master.tar.gz
cd cluster_toolkit-master/
python setup.py install # This will install into the environment
The other 3
cd ${TOPDIR}
git clone https://github.com/marcpaterno/cuba.git
cd cuba
./configure
./makesharedlib.sh
mkdir include; mkdir lib
mv cuba.h include/ ; mv libcuba.so lib/
export CUBA_DIR=$TOPDIR/cuba
cd ${TOPDIR}
git clone http://bitbucket.org/mpaterno/cubacpp.git
export CUBA_CPP_DIR=$TOPDIR/cubacpp
cd ${TOPDIR}
git clone http://github.com/marcpaterno/gpuintegration.git
export GPU_INT_DIR=$TOPDIR/gpuintegration
mkdir build; cd build
cmake -DPAGANI_DIR=$GPU_INT_DIR -DCMAKE_BUILD_TYPE=Release -DPAGANI_TARGET_ARCH=80-real -G Ninja ..
ninja
ctest
y3_cluster_cpp
cd ${Y3PIPE_DIR}
git clone http://bitbucket.org/mpaterno/y3_cluster_cpp.git
cd ${Y3PIPE_DIR}/y3_cluster_cpp
mkdir release-build
cd release-build/
cmake -DUSE_CUDA=On -DY3GCC_TARGET_ARCH=80-real -DPAGANI_DIR=${PAGANI_DIR} -DGSL_ROOT_DIR=$CONDA_PREFIX -DCMAKE_MODULE_PATH="$CUBA_CPP_DIR/cmake/modules" -DCUBACPP_DIR=$CUBA_CPP_DIR -DCUBA_DIR=$CUBA_DIR -DCMAKE_BUILD_TYPE=Release -G Ninja ../
ninja
We put everything we are going to build on; create the directory if it does not exit.
/global/common/software/des/$(id --user --name)