ABSTRACT

There are certain cases where inherent workload characteristics (e.g., limited algorithmic concurrency, fine-grain parallel tasks, and synchronization) and architectural properties (e.g., capacity limitations of shared resources) limit the scalability and the maximum degree of exploitable concurrency in an application, resulting in an observed performance loss through the use of more concurrency. Therefore, throttling concurrency has the potential to both improve performance and reduce power consumption simultaneously.