Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

Manuscript Title: A package of Linux scripts for the parallelization of Monte Carlo simulations
Authors: Andreu Badal, Josep Sempau
Program title: clonEasy
Catalogue identifier: ADYD_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 175(2006)440
Programming language: Linux shell (bash) script, FORTRAN 77.
Computer: Any computer with a Unix style shell (bash), support for the Secure Shell protocol and a FORTRAN compiler.
Operating system: Linux (RedHat 8.0, SuSe 8.1, Debian Woody 3.1). Compilers, GNU FORTRAN g77 (Linux); g95 (Linux); Intel Fortran Compiler 7.1 (Linux).
Word size: 32 bits
Keywords: Monte Carlo, parallelization.
PACS: 02.70.Uu.
Classification: 6.5.

Nature of problem:
There are many situations where a Monte Carlo simulation involves a huge amount of CPU time. The parallelization of such calculations is a simple way of obtaining a relatively low statistical uncertainty using a reasonable amount of time.

Solution method:
The presented collection of Linux scripts and auxiliary FORTRAN programs implement Secure Shell-based communication between a "master" computer and a set of "clones". The aim of this communication is to execute a code that performs a Monte Carlo simulation on all the clones simultaneously. The code is unique, but each clone is fed with a different set of random seeds. Hence, clonEasy effectively permits the parallelization of the calculation.

Restrictions:
clonEasy can only be used with programs that produce statistically independent results using the same code, but with a different sequence of random numbers. Users must choose the initialization values for the random number generator on each computer and combine the output from the different executions. A FORTRAN program to combine the final results is also provided.

Unusual features:
Any computer on the Internet with a Secure Shell client/server program installed can be used as a node of a virtual computer cluster for parallel calculations with the sequential source code. The simplicity of the parallelization scheme makes the use of this package a straightforward task, which does not require installing any additional libraries.

Additional comments:
The program, "seedsMLCG", referred to in the manuscript associated with this program, is held in the CPC Program Library as ADYE_v1_0.

Running time:
The execution time of each script largely depends on the number of computers that are used, the actions that are to be performed and, to a lesser extent, on the network connexion bandwidth.