The MPI-based Parallelization of the S-Lang MCMC Hammer
slmpi_emcee is an MPI-based Parallelization of the S-Lang Markov chain Monte Carlo (MCMC) Hammer (isis_emcee) based on algorithm proposed by Goodman & Weare (2010), implemented in Python (emcee) by Foreman-Mackey et al. (2013), which has then been implemented in the Interactive Spectral Interpretation System (ISIS) in S-Lang by M. A. Nowak, modified by T. Beuchert, L. Corrales, and M. Kuehnel, and extended for MPI-based Parallelization by A. Danehkar. Both the S-Lang MCMC hammer (emcee) and the MPI-parallelized S-Lang MCMC hammer (mpi_emcee
) are included in the Remeis ISISscripts. It utilizes the S-Lang MPI Interface Package (slmpi) implemented by Thomas Dauser and Fritz Schwarm.
1- Install HEASoft: download the HEASOFT Software:
gunzip -c heasoft6.19.tar.gz | tar xf - cd heasoft-6.19/BUILD_DIR/ ./configure make make install
2- Install ISIS:
wget http://space.mit.edu/cxc/isis/install-isis.sh setenv HEADAS /usr/local/headas/x86_64-unknown-linux-gnu-libc2.7/ sh install-isis.sh DIR
3- Install ISISscripts: download the Remeis ISISscripts
or obtain the developing version from the ISISscripts git-repository:
git clone http://www.sternwarte.uni-erlangen.de/git.public/isisscripts tar xfz isisscripts.tgz
Add it to to your personal ~/.isisrc
startup file:
add_to_isis_load_path("/path/to/isisscripts/");
Load the ISISscripts in your S-Lang script:
require("isisscripts");
4- Install the S-Lang Interface Package (slirp):
download slirp-pre2.0.0-31.tar.gz
Then:
gunzip -c slirp-pre2.0.0-31.tar.gz | tar xf - ./configure make make install
Add slirp-module.so
to the isis_load_path
.
5- Install the S-lang MPI Interface Package (slmpi):
download slmpi
Then:
gunzip -c slmpi.tar.gz | tar xf - make
Add slmpi-module.so
to the isis_load_path
.
6- Install the S-lang MCMC Hammer:
Obtain the developing version from the github:
git clone https://github.com/mcfit/slmpi_emcee.git
Load the S-lang MCMC Hammer in your S-Lang script:
require("mpi_isis_emcee");
7- Run the example:
mpirun -np 8 isis ./example_mpi_emcee.sl
Repository | https://github.com/mcfit/slmpi_emcee |
Issues & Ideas | https://github.com/mcfit/slmpi_emcee/issues |
Archive | 10.5281/zenodo.4495925 |