TY - JOUR
T1 - Conservation cores
T2 - Reducing the energy of mature computations
AU - Venkatesh, Ganesh
AU - Sampson, Jack
AU - Goulding, Nathan
AU - Garcia, Saturnino
AU - Bryksin, Vladyslav
AU - Lugo-Martinez, Jose
AU - Swanson, Steven
AU - Taylor, Michael Bedford
PY - 2010/3
Y1 - 2010/3
N2 - Growing transistor counts, limited power budgets, and the breakdown of voltage scaling are currently conspiring to create a utilization wall that limits the fraction of a chip that can run at full speed at one time. In this regime, specialized, energy-efficient processors can increase parallelism by reducing the per-computation power requirements and allowing more computations to execute under the same power budget. To pursue this goal, this paper introduces conservation cores. Conservation cores, or c-cores, are specialized processors that focus on reducing energy and energy-delay instead of increasing performance. This focus on energy makes c-cores an excellent match for many applications that would be poor candidates for hardware acceleration (e.g., irregular integer codes).We present a toolchain for automatically synthesizing c-cores from application source code and demonstrate that they can significantly reduce energy and energy-delay for a wide range of applications. The c-cores support patching, a form of targeted reconfigurability, that allows them to adapt to new versions of the software they target. Our results show that conservation cores can reduce energy consumption by up to 16.0× for functions and by up to 2.1× for whole applications, while patching can extend the useful lifetime of individual c-cores to match that of conventional processors.
AB - Growing transistor counts, limited power budgets, and the breakdown of voltage scaling are currently conspiring to create a utilization wall that limits the fraction of a chip that can run at full speed at one time. In this regime, specialized, energy-efficient processors can increase parallelism by reducing the per-computation power requirements and allowing more computations to execute under the same power budget. To pursue this goal, this paper introduces conservation cores. Conservation cores, or c-cores, are specialized processors that focus on reducing energy and energy-delay instead of increasing performance. This focus on energy makes c-cores an excellent match for many applications that would be poor candidates for hardware acceleration (e.g., irregular integer codes).We present a toolchain for automatically synthesizing c-cores from application source code and demonstrate that they can significantly reduce energy and energy-delay for a wide range of applications. The c-cores support patching, a form of targeted reconfigurability, that allows them to adapt to new versions of the software they target. Our results show that conservation cores can reduce energy consumption by up to 16.0× for functions and by up to 2.1× for whole applications, while patching can extend the useful lifetime of individual c-cores to match that of conventional processors.
UR - http://www.scopus.com/inward/record.url?scp=77949881084&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=77949881084&partnerID=8YFLogxK
M3 - Article
AN - SCOPUS:77949881084
SN - 1523-2867
VL - 45
SP - 205
EP - 218
JO - ACM SIGPLAN Notices
JF - ACM SIGPLAN Notices
IS - 3
ER -