T3PS v1.0: Tool for Parallel Processing in Parameter Scans

2016 
Abstract T3PS is a program that can be used to quickly design and perform parameter scans while easily taking advantage of the multi-core architecture of current processors. It takes an easy to read and write parameter scan definition file format as input. Based on the parameter ranges and other options contained therein, it distributes the calculation of the parameter space over multiple processes and possibly computers. The derived data is saved in a plain text file format readable by most plotting software. The supported scanning strategies include: grid scan, random scan, Markov Chain Monte Carlo, numerical optimization. Several example parameter scans are shown and compared with results in the literature. Program summary Program title: T3PS Catalogue identifier: AEXZ_v1_0 Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AEXZ_v1_0.html Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland Licensing provisions: GNU General Public License v3 No. of lines in distributed program, including test data, etc.: 291799 No. of bytes in distributed program, including test data, etc.: 14864680 Distribution format: tar.gz Programming language: Python 2. Computer: PC running under Linux, should run in every Unix environment. Operating system: Linux, Unix. Has the code been vectorized or parallelized? : Parallelized 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 systems 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. Restrictions: 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 dependent on user input; examples take about 5 s, 30 min, 1 s, 10 s, 30 s, 100 min, 100 min, 5 min, 5 min in order of appearance in the text (i.e. QuickStart, ScalarDM, 3× ChargedLeptons, 4×HiggsMass) on an Intel Core i7-3770.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    25
    References
    7
    Citations
    NaN
    KQI
    []