experipy: Automating Script Generation

experipy is a framework for writing and running Computational Science experiments. It provides facilities for describing an experiment as a shell script, and mechanisms for then running it. Experiments can be run locally and also submitted to a cluster’s job queuing system as a PBS script.

from experipy.exp       import Experiment
from experipy.grammar   import Executable

echo = Executable("echo",
    ["Hello World", "> test.out"],
    outputs=["test.out"]
)

exp = Experiment(echo, expname="test", destdir="results")
exp.run()

The intention of experipy is to act as the core of a researcher’s scripting framework. In the author’s research group, projects often involved running dozens of benchmarks with hundreds of configurations in parallel across a cluster, so experipy was designed to ease the design and scripting of new experiments and configurations.

Indices and tables