Adaptive Runtime Techniques For Power And Resource Management On Multi-Core Systems