Parallel Error Calculation using MPI and SLmpi
Jump to navigation
Jump to search
Parallel Error Calculation with MPI and SLmpi
- For interactive error calculation in isis you can use
conf
orconf_loop
(using Isis_Slaves.num_slaves+1 cores on the host machine). - Fast possibility:
mpi_fit_pars
. It's a routine in the isisscripts, which uses MPI to calculate the confidence intervals in parallel on different machines.
- Requirements:
- SLmpi installed: http://www.sternwarte.uni-erlangen.de/git.public/?p=slmpi.git
- A Portable Batch System (PBS), e.g., Torque (see Torque for an Introduction)
- the Remeis-isisscripts http://www.sternwarte.uni-erlangen.de/git.public/?p=isisscripts
- Create an isisscript to be submitted via PBS:
- load and group data, load best fit model
- call
result = mpi_fit_pars([pars]);
- if you have the isisscripts you can store everything in a fits-file via
fits_save_fit(filename,result)
- How to start the Job on the Remeis Cluster?
- Create a job-file with mpi-Option (e.g. by
qsub_array -p %%--%%mpi file.com
) - the Command File
file.com
contains the list of scripts to be executed. - Set nodes to the number of free parameters. (See below for an example).
- Create a job-file with mpi-Option (e.g. by
#!/bin/bash #PBS -S /bin/bash -V #PBS -t 0-0\%10000 #PBS -l nodes=11 #PBS -l walltime=03:00:00 #PBS -N file.com #PBS -o example_script.out #PBS -e example_script.err cd /home/user/datadir COMMAND[0]="mpiexec isis-script example_script.sl" /usr/bin/nice -n +15 ${COMMAND[$PBS_ARRAYID]}