RAMBO is a Resource-Aware Model-Based Optimization framework that leads to efficient utilization of parallel computer architectures through resource-aware scheduling strategies.
Conventional MBO fits a regression model on the set of already evaluated configurations and their observed performances to guide the search.
Due to its inherent sequential nature, an efficient parallel variant can not directly be derived, as only the most promising configuration w.r.t. an infill criterion is evaluated in each iteration.
This issue has been addressed by generalized infill criteria in order to propose multiple points simultaneously for parallel execution in each sequential step.
However, these extensions in general neglect systematic runtime differences in the configuration space which often leads to underutilized systems.
RAMBO estimates runtimes using an additional surrogate model to improve the scheduling.