Energy minimization on heterogeneous systems through approximate computing
Autore
Spyrou M., Kalogirou C., Konstantas C., Koutsovasilis P., Maroudas M., Antonopoulos C.D., Bellas N.Data
2016Language
en
Soggetto
Abstract
Energy efficiency is a prime concern for both HPC and conventional workloads. Heterogeneous systems typically improve energy efficiency at the expense of increased programmer effort. A novel, complementary approach is approximating selected computations in order to minimize the energy footprint of applications. Not all applications or application components are amenable to this method, as approximations may be detrimental to the quality of the end result. Therefore the programmer should be able to express algorithmic wisdom on the importance of specific computations for the quality of the end-result and thus their tolerance to approximations. We introduce a framework comprising of a parallel meta-programming model based on OpenCL, a compiler which supports this programming model, and a runtime system which serves as the compiler backend. The proposed framework: (a) allows the programmer to express the relative importance of different computations for the quality of the output, thus facilitating the dynamic exploration of energy /quality tradeoffs in a disciplined way, and (b) simplifies the development of parallel algorithms on heterogeneous systems, relieving the programmer from tasks such as work scheduling and data manipulation across address spaces. We evaluate our approach using a number of real-world applications, beyond kernels, with diverse characteristics. Our results indicate that significant energy savings can be achieved by combining the execution on heterogeneous systems with approximations, with graceful degradation of output quality. © 2016 The authors and IOS Press. All rights reserved.