“…Optimizations for power management have traditionally focused on dynamic voltage and frequency scaling (DVFS) by operating systems [8,5]. Compiler optimizations to enhance power efficiency of applications have mostly focused on varying instruction scheduling schemes [13,16,22,26] and thread-allocation and scheduling strategies [2,1,23]. Power consumption has been estimated using architectural simulation [4,16,2], offline profiling [6], and real time monitoring of hardware counters [23,18].…”