Skip to content
Snippets Groups Projects

Implement Benchmarking Strategy: Heuristic 2 (Binary Search Strategy)

Closed Simon Ehrenstein requested to merge stu200776/spesb:49-add-binary-search-strategy into master
6 files
+ 48
25
Compare changes
  • Side-by-side
  • Inline
Files
6
@@ -3,23 +3,22 @@
import os
from .config import SubexperimentConfig
def execute(config):
subexperiment_counter=0
subexperiments_total=len(config.dim_values)*len(config.replicas)
i=0
j=0
while i in range(len(config.dim_values)):
while j in range(len(config.replicas)):
subexperiment_counter+=1
print(f"Run subexperiment {subexperiment_counter}/{subexperiments_total} with dimension value {config.dim_values[i]} and {config.replicas[j]} replicas.")
while i < len(config.replicas) and j < len(config.dim_values):
subexperiment_counter+=1
print(f"Run subexperiment {subexperiment_counter}/{subexperiments_total} with dimension value {config.dim_values[j]} and {config.replicas[i]} replicas.")
subexperiment_config = SubexperimentConfig(config.use_case, subexperiment_counter, config.dim_values[j], config.replicas[i], config.partitions, config.cpu_limit, config.memory_limit, config.kafka_streams_commit_interval_ms, config.execution_minutes)
subexperiment_config = SubexperimentConfig(config.use_case, subexperiment_counter, config.dim_values[i], config.replicas[j], config.partitions, config.cpu_limit, config.memory_limit, config.kafka_streams_commit_interval_ms, config.execution_minutes)
config.subexperiment_executor.execute(subexperiment_config)
result = config.subexperiment_evaluator.execute()
if result == 1:
j+=1
else:
i+=1
config.subexperiment_executor.execute(subexperiment_config)
result = config.subexperiment_evaluator.execute()
if result:
i+=1
else:
j+=1
i+=1
\ No newline at end of file
print(f"Executed {subexperiment_counter} experiments in total.")
\ No newline at end of file
Loading