Our orchestration framework replaces hand-crafted scripts for setting up and
Our orchestration framework replaces hand-crafted scripts for setting up and
running experiments. Instead, they are described in a declarative fashion. The
running experiments. Instead, experiments are described in a declarative
orchestration framework then takes care of the details managing launching the
fashion. The orchestration framework then takes care of the details, manages
respective component simulators, setting up the SimBricks communication channels
launching the respective component simulators, sets up the SimBricks
between them, and monitoring their execution. All output is collected in a JSON
communication channels between them, and monitors their execution. All output is
file, which allows post-processing afterwards.
collected in a JSON file, which allows easy post-processing afterwards.
******************************
******************************
Concepts
Concepts
...
@@ -44,11 +44,12 @@ which we now introduce.
...
@@ -44,11 +44,12 @@ which we now introduce.
Experiments
Experiments
===========
===========
An *experiment* defines which component simulators to run, how they are
An *experiment* defines which component simulators to run and how they are
connected, and which workload is executed. To define an experiment, instantiate
connected. To define one, instantiate the class
the class :class:`~simbricks.orchestration.experiments.Experiment` in your own
:class:`~simbricks.orchestration.experiments.Experiment` in your own Python
Python module, which has member functions to further define the component
module, which has member functions to further define the component simulators to
simulators to run. SimBricks comes with many pre-defined experiments, which can serve as starting guides and are located in the repository under ``experiments/pyexps``.
run. SimBricks comes with many pre-defined experiments, which can serve as
starting guides and are located in the repository under ``experiments/pyexps``.