Skip to main content

Python computational experiment management

Project description

Overview

epyc is a Python module for controlling a long-running series of computational experiments, as is often found when writing simulations of complex networks and other such domains. There is often a need to perform a computation across a multi-dimensional parameter space, varying the parameters, performing and aggregating multiple repetitions, and wrangling results for analysis and presentation. Often the experiments being performed are on such a scale as to require the use of a computing cluster to perform multiple experiments simultaneously.

Managing all these tasks is complicated, so epyc tries to automate it. It provides a way to define a “laboratory” performing a collection of “experiments” whose parameters and results are recorded in a “lab notebook” for later retrieval. Laboratories can be sequential (for a single machine) or parallel (to use a multicore or cluster of machines); lab notebooks can be persistent to allow experiments to be fired-off and their results retrieved later – handy if you use a laptop. Notebooks store all the data and metadata in a portable format to improve the reproducibility of computational experiments.

epyc also includes a small number of “experiment combinators” that separate the logic of a single experiment from the logic of performing multiple repetitions and other structuring tasks. This means that any experiment can be repeated and statistically summarised, for example.

Installation

You can install epyc directly from PyPi using pip:

pip install epyc

The master distribution of epyc is hosted on GitHub. To obtain a copy, just clone the repo:

git clone git@github.com:simoninireland/epyc.git
cd epyc
python setup.py install

Documentation

The doc/ directory contains an IPython notebook that describes the use of epyc in detail. You can also read it directly online <https://github.com/simoninireland/epyc/blob/master/doc/epyc.ipynb>.

Author and license

Copyright (c) 2016, Simon Dobson <simon.dobson@computer.org>

Licensed under the GNU General Public Licence v.2.0 <https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html>.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

epyc-0.9.1.tar.gz (173.0 kB view details)

Uploaded Source

File details

Details for the file epyc-0.9.1.tar.gz.

File metadata

  • Download URL: epyc-0.9.1.tar.gz
  • Upload date:
  • Size: 173.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for epyc-0.9.1.tar.gz
Algorithm Hash digest
SHA256 5e622b6b1059a0838d2fd0c066685086e1fee8e7e869a6dafcbf43c99fbe4445
MD5 5f894e5b018b9643da4c7e221e346eb0
BLAKE2b-256 0fe3a7647a911565efb8d65c866912d48e70f74856eef65b5bd30a1c7b613951

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page