Skip to content

Design revised Theodolite architecture

Architectural Requirements:

  • Support for arbitrary benchmarks/stream processing engines
    • Each benchmark (implementation) is configured via a file, which specifies docker containers etc. for that benchmark
  • Support for different load dimensions
    • A load dimension is a parameter, which are different values tested for
  • Support for different resource scaling types
    • E.g., scaling with number of instances, threads per instance, etc.
  • Support for arbitrary configuration of stream processing engine
    • E.g. something like passing configuration options to the SUT
  • Configuration of search strategy
  • Configuration of lag experiment
    • E.g. execution duration, number of repetitions, warm-up period