Breakout Session 3 Stack of adaptive systems (with a view on self-adaptation)
Cores Threads Algorithm Data Autotuner tunes CPU frequency scales up Cooldown is necessary Following programms have to run slower Influences Example:
Layer Do the different layers interfere and how do they interfere? How can we measure or classify those interferences with respect to self-adaption / self-optimization
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW CPU-frequency Tradeoff: performance vs. energy consumption / thermal Number of cores Tradeoff: cores vs. energy Transmodel migration (CPU GPU, FPGA) Tradeoff: performance vs. adaption time
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW Number of VMs (elasticity management, live migration) Tradeoff: capacity vs. energy vs. cost Scheduling of VMs (priority boosting) Tradeoff: overhead vs. performance boost of high priority VMs
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW Algorithms (adaptive rendering, sorting) Tradeoff: response time vs. accuracy/”quality”
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW Number of VMs (elasticity management, live migration) Tradeoff: capacity vs. energy vs. cost Scheduling of VMs (priority boosting) Tradeoff: adaption time vs. performance Thread pool size (autotuner) Tradeoff: degree of parallelism vs. memory vs. adaption time JIT compiler (recompilation) Tradeoff: response time vs. performance
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW Platform as a service (AppEng, Azure) Tradeoff: latency vs. performance Inter app msg routing (relay networks) Tradeoff: latency vs. utilization
SW/APPS/DB Middleware Virtual Machine System Libraries Hypervisor / OS Scheduler HW Number of Threads Tradeoff: degree of parallelism vs. memory consumption Query optimization Tradeoff: Performance vs. latency
Open questions: Need more interaction scenarios get a better feeling for the possible interactions and how they must be considered Coordination of the layers How can the different layers exchange information What kind of information