slmpi_emcee: 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 based on algorithm proposed by Goodman & Weare (2010), which was implemented in the Interactive Spectral Interpretation System in S-Lang (M. A. Nowak, modified by T. Beuchert, L. Corrales, and M. Kuehnel), and extended for MPI-based Parallelization (A. Danehkar). It is now included in the Remeis ISISscripts. It utilizes the S-Lang MPI Interface Package (slmpi; Thomas Dauser and Fritz Schwarm).
Installation
1- Install 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 https://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 the Remeis ISISscripts
git clone https://www.sternwarte.uni-erlangen.de/git.public/isisscripts tar xfz isisscripts.tgz
Add it to to your ~/.isisrc file
add_to_isis_load_path("/path/to/isisscripts/");
Load the ISISscripts in your S-Lang cocde:
require("isisscripts");
4- Install the S-Lang Interface Package (slirp; slirp-pre2.0.0-31.tar.gz):
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):
gunzip -c slmpi.tar.gz | tar xf - make
Add slmpi-module.so to the isis_load_path.
6- Install the S-lang MCMC Hammer:
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
Reference for MPI_XSTAR
- A. Danehkar, M. A. Nowak, J. C. Lee, & R. K. Smith (2018) PASP 130:024501