Utility for facilitating parallel parameter sweeps.
Project description
parasweep
parasweep is a free and open-source Python utility for facilitating parallel parameter sweeps with computational models. Instead of requiring parameters to be passed by command-line, which can be error-prone and time-consuming, parasweep leverages the model’s existing configuration files using a template system, requiring minimal code changes. After the sweep values are specified, a parallel job is dispatched for each parameter set, with support for common high-performance computing job schedulers. Post-processing is facilitated by providing a mapping between the parameter sets and the simulations.
The following paper gives a description as well as a simple example to get started: https://arxiv.org/pdf/1905.03448.pdf. Please cite it if you find parasweep useful for your project!
Free software: MIT license
Documentation: http://www.parasweep.io
Dependencies
Python 3.6+
xarray
numpy
scipy
Mako (optional)
drmaa-python (optional)
Credits
Developed by Eviatar Bach <eviatarbach@protonmail.com>. Special thanks to Daniel Philipps (danielphili) for a bug fix and feature suggestion.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
2021.01 (2021-01-06)
Changing wait option to be True by default
Minor fixes to Lorenz example
2020.10 (2020-10-27)
Adding option to exclude simulation IDs
Allowing empty sweep ID
2020.09 (2020-09-02)
Incorporating sweep_id into SequentialNamer (thanks to danielphili)
2020.02 (2020-02-17)
Fixing bug with default sweep_id on Windows (thanks to danielphili)
Unicode support for PythonFormatTemplate
2019.02.3 (2019-02-20)
Adding SetNamer naming
2019.02.2 (2019-02-18)
Adding process limit for subprocess dispatching
Adding RandomSweep sweep type
Adding HashNamer naming
Clarifying version dependencies
More examples
2019.02 (2019-02-07)
Separating sweep logic into a separate module
Adding FilteredCartesianSweep sweep type
Numerous documentation changes, including many more examples
2019.01 (2019-01-21)
First release on PyPI
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.