sandbox/YiDai/DelftblueB
Running Basilisk on DelftBlue
I am currently running simulation on DelftBlue. If you have assess to DelftBlue, the following instructions may be helpful.
Install Basilisk and other packages
load modules and PATH in .bashrc
module load 2022r2
module load openmpi/4.1.1
module unload ffmpeg/4.3.2
module load bison/3.8.2
module load gnuplot/5.4.2
module load valgrind/3.17.0
export BASILISK=/home/netid/basilisk/src
export PATH=$PATH:/home/netid/basilisk/src
export LD_LIBRARY_PATH=/home/netid/local/lib:$LD_LIBRARY_PATH
export PATH=$PATH:/home/netid/local/binBasilisk
wget http://basilisk.fr/basilisk/basilisk.tar.gz
tar xzf basilisk.tar.gzOpenGL & OSMesa (for view.h)
The instuction here works, but you need to set the PATH, which is already in your bashrc
export LD_LIBRARY_PATH=/home/netid/local/lib:$LD_LIBRARY_PATHchange the config file
OPENGLIBS = -L/home/netid/local/lib -lfb_osmesa -lGLU -lOSMesachange the fb_osmesa.c in basilisk/src/gl/
#include </home/netid/local/include/GL/osmesa.h>in basilisk/src/gl/
make libglutils.a libfb_osmesa.aThen you will be able to compile
ffmpeg on DelftBlue
ffmpeg version on DelftBlue is not ideal (lack of libx264). We install it in our home directory.
First nasm:
cd ~/ffmpeg_sources && \
wget https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.bz2 && \
tar xjvf nasm-2.15.05.tar.bz2 && \
cd nasm-2.15.05 && \
./autogen.sh && \
PATH="$HOME/bin:$PATH" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" && \
make && \
make installThen libx264:
cd ~/ffmpeg_sources && \
git -C x264 pull 2> /dev/null || git clone --depth 1 https://code.videolan.org/videolan/x264.git && \
cd x264 && \
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static --enable-pic && \
PATH="$HOME/bin:$PATH" make && \
make installThen ffmpeg:
cd ~/ffmpeg_sources && wget -O ffmpeg-snapshot.tar.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2 && tar xjvf ffmpeg-snapshot.tar.bz2 && cd ffmpeg && PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --pkg-config-flags="--static" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --extra-libs="-lpthread -lm" --ld="g++" --bindir="$HOME/bin" --enable-gpl --enable-libx264 && PATH="$HOME/bin:$PATH" make && make install && hash -rImagemagick
download the package
tar xvzf ImageMagick.tar.gz
cd ImageMagick-7.1.0-51
./configure --prefix=/home/[netid]/local
make
make installAfter that, add the PATH, which is already in .bashrc
export PATH=$PATH:/home/netid/local/binRun a jobscript on DelftBlue
If you are using OPENMP, the following jobscript should work
#!/bin/sh
#
#SBATCH --job-name="jobname"
#SBATCH --partition=compute
#SBATCH --time=24:00:00
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=48
#SBATCH --mem-per-cpu=1G
#SBATCH --account=research-<faculty>-<department>
module load 2022r2
module load bison/3.8.2
module load gnuplot/5.4.2
module load openmpi/4.1.1
module load valgrind/3.17.0
export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK
srun ./a.out