Skip to content
Manuel Peuster edited this page Jan 29, 2019 · 4 revisions

Profile Experiment Descriptor (PED)

PEDs are used to define and describe complex benchmarking experiments. This wiki page explains what fields are available and how they are used.

PED Exampels

Example PEDs can be found here.

PED Structure

Section experiment_parameters:

The experiment_parameters section describes which configurations are tested during a benchmarking experiment and is thus very important for the experiment design. Each parameter can either be given as a single value or as a list of different values that should be tested.

Example

A full experiment_parameters can look like this:

experiment_parameters:
      - function: "de.upb.ids-suricata.0.1"
        cmd_start: "./start.sh small_ruleset"
        cmd_stop: "./stop.sh"
        cpu_bw: 0.1  # float: fraction of CPU time in vim-emu
        cpu_cores: "0"  # string: this is "cpuset_cpu" in vim-emu e.g. ["0, 1"] -> 2 CPUs
        mem_max: 2048  # int: Memory in MByte
        mem_swap_max: null
        io_bw: null

Fields

Using vim-emu as execution platform.

Field Type Example(s) Description
cpu_bw float 0.2 or [0.2, 0.4] Fraction of available CPU time 0.1 = 10% CPU time
cpu_cores string "2" or "0,1" or ["0", "0,1"] Assigned CPU cores (aka cpuset_cpu). "0,1" means core 0 and core 1 are used
mem_max int 1024 or [128, 256] Available memory in MB. If the process uses more, the container swaps
mem_swap_max not implemented yet
io_bw not implemented yet

TODO document other sections ...