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

[Licence| Download | New Version Template] aexz_v1_0.tar.gz(14516 Kbytes)
Manuscript Title: T3PS v1.0: Tool for Parallel Processing in Parameter Scans
Authors: Vinzenz Maurer
Program title: T3PS
Catalogue identifier: AEXZ_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 198(2016)195
Programming language: Python 2.
Computer: PC running under Linux, should run in every Unix environment.
Operating system: Linux, Unix.
Has the code been vectorised or parallelized?: Parallelized
Keywords: Parameter scans, Parallelization, Multiprocessing, Optimization, Monte Carlo.
PACS: 02.60.Pn, 02.70.Uu, 89.20.Ff.
Classification: 4.9, 4.12, 4.13, 6.5.

External routines: Python 2.7; micrOMEGAs, SciPy, SoftSUSY, SPheno (in optional examples)

Nature of problem:
While current processor architecture firmly goes the way of parallelization even on desktop computers, programs commonly used for parameter scans in physics often lack the capability to take advantage of this. While it is possible to change the source code of some programs, it may not be feasible for every program still in use. Fortunately, current operating system routinely make use of multiple processor cores already, if multiple processes are running at the same time. The easiest way to make use of this using shell scripts and background tasks or similar, however, turns the problem into an organizational one, as the calculation will run asynchronously. This poses the problem of merging the different data sets into a final complete one and/or makes it hard to implement more advanced scan strategies.

Solution method:
The parameter scan definition is read in from a simple plain text format. The sub-divisions of the parameter scan are then distributed to concurrently running sub-processes, which run the code doing the actual calculation. These sub-processes naturally take advantage of the multiprocessing architecture of modern operating systems without the need for the user to change any code.

The program is not supported under Python 3.

Unusual features:
The parallelization is not restricted to the local computer and can be extended to use remote computers as well with little effort.

Running time:
Largely dependant on user input; examples take about 5sec, 30min, 1sec, 10sec, 30sec, 100min, 100min, 5min, 5min in order of appearance in the text (i.e. QuickStart, ScalarDM, 3 x ChargedLeptons, 4 x HiggsMass) on an Intel Core i7-3770.