Modern Multicore CPUs are not Energy Proportional: Opportunity for Bi-objective Optimization for Performance and Energy
Semyon Khokhriakov, Ravi Reddy Manumachu, Alexey Lastovetsky

TL;DR
Modern multicore CPUs do not exhibit energy proportionality, enabling the need for bi-objective optimization to balance performance and energy consumption in multithreaded applications.
Contribution
This paper introduces the first application-level bi-objective optimization method for multithreaded applications on multicore CPUs, considering performance and energy.
Findings
Optimization for performance increases energy consumption by up to 89%.
Energy-focused optimization can degrade performance by up to 49%.
The method finds up to 11 Pareto-optimal solutions.
Abstract
Energy proportionality is the key design goal followed by architects of modern multicore CPUs. One of its implications is that optimization of an application for performance will also optimize it for energy. In this work, we show that energy proportionality does not hold true for multicore CPUs. This finding creates the opportunity for bi-objective optimization of applications for performance and energy. We propose and study the first application-level method for bi-objective optimization of multithreaded data-parallel applications for performance and energy. The method uses two decision variables, the number of identical multithreaded kernels (threadgroups) executing the application and the number of threads in each threadgroup, with the workload always partitioned equally between the threadgroups. We experimentally demonstrate the efficiency of the method using four highly optimized…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Cloud Computing and Resource Management · Distributed and Parallel Computing Systems
