60 likes | 232 Views
Challenges. Group 1. The adaptive and optimizing system. Stack of adaptive systems Each layer optimizes CPU pipeline Caching VM hypervisors OS scheduler Run-time optimization Can they interact in a way that screws-up performance?
E N D
Challenges Group 1
The adaptive and optimizing system • Stack of adaptive systems • Each layer optimizes • CPU pipeline • Caching • VM hypervisors • OS scheduler • Run-time optimization • Can they interact in a way that screws-up performance? • Can we improve the system by adding relationships and communication between the layers? • Is there a classical layer model (alike OSI network)?
Platform abstraction • Platform dependent behavior and testing • Windows vs. RTOS • Simulating embedded devices • Interaction of quality attributes • Model to model transformation • Automatically adding platform dependent information based on a generic model • Transform the workflow of a model to explore the opportunities of parallelism
Runtime Hardware • Problem of correct measurements • Micro benchmarks and how representative they are for real application performance • What sort of warm-up is needed? • Hardware dimensions • Multi threads • Vectors • Multi core itself is not enough for efficient execution • Performance on different computing platforms (x86 vs ARM vs PPC)
Development • Service-based optimization of cloud resources • Can I optimize my own service? You don’t know what you get. • Software development • What can be done by the developer? What anti-patterns exist? • Compiler optimization • Based on ancient hardware models • Interesting optimizations are NP-hard • JIT compilation runs with time constraints
Meeting high and low • Detailed low-level models • Caching behavior, locality relevance changes • Ideal CPU model • Lock-free algorithms • High-level architecture models • Components • Deadlines • Where do these meet?