-
Notifications
You must be signed in to change notification settings - Fork 2
ExperimentDescription
LWagner edited this page May 9, 2022
·
1 revision
There are two ways of describing an Expierment in MiSim The first is a scenario-based description and the second a more general description. Both need to contain an experiment meta data description.
Property | Description | Mandatory | Default Value |
---|---|---|---|
name | The name of the experiment. | X | -- |
description | A short (or long) description of the experiment. | empty string | |
report_dir | Location where to put the results. | "./Report" | |
report_type | Detail level of the report. | "default" | |
duration | The duration of the experiment. Defaults to infinity. | Infinite | |
seed | The randomizer seed for the experiment. | Random | |
time_unit | Reference unit that sets the type of the STU. This is a planned feature and will not parse for now. | Seconds |
These properties can be nested inside a "simulation_meta_data"
element, but can also be placed at the root level of an experiment.
Property | Description |
---|---|
name | The name of the experiment |
artifact | Affected Service |
component | Comma-separated list of affected Endpoints. ALL_ENDPOINTS is an available shortcut. |
stimulus | Actions during the Experiment. |
Property | Description |
---|---|
LOAD \<LoadModelURI>
|
Runs the arrival rate model found at the given URI/path. Optionally LOAD~ can be used for automatically repeating models. |
START k@T
|
Starts k instances of the artifact service at time T. |
KILL <service_name> k@T
|
Kills k instances of the artifact service at time T. If no k is given, all instances are killed. Using the optional parameter <service_name> other services may be killed. |
DELAY D@T~I
|
Delays all incoming request for the artifact by D (Distribution Expression) after Time T for I STU. The parameter ~I is not mandatory. |
Multiple stimuli can be combined using the AND keyword.
{
"simulation_meta_data": {
"experiment_name": "Demo",
"duration": 180,
"seed": 404
},
"artifact": "gateway",
"component": "ALL ENDPOINTS",
"stimulus": "LOAD ./Examples/ProofOfConcept/linear_peaks_1000ArrivalRates.csv AND DELAY 3+-2.1@30~20"
}
The generic description is more detailed than the scenario-based description and allows for a more accurate description. It has (besides the meta data declaration) only a single fixed property "request_generators", which is a list of work load generator descriptions.
Property | Description |
---|---|
request_generators | List of request generators |
Everything else inside the description will be parsed as a fault load.
{
"simulation_meta_data": {
"experiment_name": "Demo",
"duration": 180,
"seed": 404
},
"request_generators": [
List<LoadGeneratorDescription>
],
"named_experiment_actions": <FaultLoadDescription>,
"grouped_experiment_actions": [
List<FaultLoadDescription>
]