Intermediate commit. Transforming single script into individual steps.
This commit is contained in:
parent
557025fe7a
commit
ab909fe236
17 changed files with 493 additions and 134 deletions
76
scripts/stage3/install_fftw.sh
Normal file
76
scripts/stage3/install_fftw.sh
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
#!/bin/bash
|
||||
|
||||
if [[ "$BASH_SOURCE" == "$0" ]]; then
|
||||
BUILD_LOCATION=${PWD}
|
||||
INSTALL_LOCATION=/avfs/people/parl703
|
||||
LOG_LINES=200
|
||||
else
|
||||
source ${BUILD_LOCATION}/build.env
|
||||
ROOT=${PWD}
|
||||
fi
|
||||
|
||||
TARGET_CPU=${TARGET_CPU:-"native"}
|
||||
|
||||
echo "==================== Installing FFTW ===================="
|
||||
FFTW_VERSION=3.3.10
|
||||
|
||||
FFTW_BUILD_DIR=${BUILD_LOCATION}/fftw
|
||||
FFTW_INSTALL_DIR=${INSTALL_LOCATION}/fftw/${FFTW_VERSION}
|
||||
mkdir -p ${FFTW_BUILD_DIR}
|
||||
mkdir -p ${FFTW_INSTALL_DIR}
|
||||
|
||||
cd ${FFTW_BUILD_DIR}
|
||||
if [ -f fftw-${FFTW_VERSION}.tar.gz ]; then
|
||||
echo "fftw-${FFTW_VERSION}.tar.gz is found"
|
||||
else
|
||||
wget -c ftp://ftp.fftw.org/pub/fftw/fftw-${FFTW_VERSION}.tar.gz
|
||||
fi
|
||||
#[ -d fftw-${FFTW_VERSION}/build ] && rm -rf fftw-${FFTW_VERSION}/build
|
||||
#tar -xf fftw-${FFTW_VERSION}.tar.gz
|
||||
cd fftw-${FFTW_VERSION}
|
||||
mkdir -p build && cd build
|
||||
|
||||
FFTW_FLAGS="--enable-shared"
|
||||
|
||||
if [ "${TARGET_CPU}" = "native" ]; then
|
||||
if [ -f /proc/cpuinfo ]; then
|
||||
grep '\bavx\b' /proc/cpuinfo 1> /dev/null && FFTW_FLAGS="${FFTW_FLAGS} --enable-avx"
|
||||
grep '\bavx2\b' /proc/cpuinfo 1> /dev/null && FFTW_FLAGS="${FFTW_FLAGS} --enable-avx2"
|
||||
grep '\bavx512f\b' /proc/cpuinfo 1> /dev/null && FFTW_FLAGS="${FFTW_FLAGS} --enable-avx512"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$BUILD_SINGLE" = true ]; then
|
||||
FFTW_FLAGS="--enable-float ${FFTW_FLAGS}"
|
||||
fi
|
||||
|
||||
if [ "$OPENMP_ENALBED" = true ]; then
|
||||
FFTW_FLAGS="--enable-openmp ${FFTW_FLAGS}"
|
||||
OTHER=openmp
|
||||
else
|
||||
FFTW_FLAGS="--enable-threads ${FFTW_FLAGS}"
|
||||
OTHER=smp
|
||||
fi
|
||||
|
||||
if [ "$MPI_ENABLED" = true ]; then
|
||||
FFTW_FLAGS="--enable-mpi ${FFTW_FLAGS}"
|
||||
FFTW_INSTALL_DIR=${FFTW_INSTALL_DIR}/${MPI_MODE}/${MPI_VERSION}
|
||||
else
|
||||
FFTW_INSTALL_DIR=${FFTW_INSTALL_DIR}/${OTHER}
|
||||
fi
|
||||
|
||||
echo "Installing from scratch into ${FFTW_INSTALL_DIR}"
|
||||
echo ${FFTW_FLAGS}
|
||||
../configure --prefix=${FFTW_INSTALL_DIR} ${FFTW_FLAGS} > configure.log 2>&1 || tail -n ${LOG_LINES} configure.log
|
||||
make -j$(nproc) > make.log 2>&1 || tail -n ${LOG_LINES} make.log
|
||||
if [ -z "$SKIP_CHECK" ]; then
|
||||
echo -n "Checking that everything is working properly ... "
|
||||
make -j$(nproc) check > check.log 2>&1 || tail -n ${LOG_LINES} check.log
|
||||
echo "Success!"
|
||||
fi
|
||||
#make -j$(nproc) install > install.log 2>&1 || tail -n ${LOG_LINES} install.log
|
||||
|
||||
if [[ "$BASH_SOURCE" != "$0" ]]; then
|
||||
cd ${ROOT}
|
||||
echo "Exiting ..."
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue