[LLVMdev] Power/Energy Awareness in LLVM

Ghassan Shobaki ghassan_shobaki at yahoo.com
Mon Apr 15 09:28:40 PDT 2013


Thank you for the link! It is not clear though what -Oe actually implements. Does it simply optimize for speed as suggested by Chris or it does other things?
Generally speaking, speed correlates well with low energy, because completing the task in fewer cycles means consuming less energy unless the speed optimization causes the energy per cycle to be significantly higher. In theory, some compiler and hardware optimizations such as instruction-level parallelism (ILP), speculative execution and pre-fetching increase the energy consumption per cycle. If the same speed can be achieved using less energy per cycle by controlling such optimizations, the total energy consumption will be less. Some of these optimizations may be controlled by the compiler. Also, the switching energy from one instruction to another depends on the instruction order. So, in theory, if there are multiple instruction orders that give the same speed, the order that minimizes the switching energy will consume less overall energy. There is some academic research on this with simulation data, but I am not aware of any actual implementation in a
 production compiler that proves actual energy reduction. Has anyone ever implemented and experimented with such optimizations in LLVM?

Thanks

Ghassan Shobaki, PH.D
Assistant Professor 
Department of Computer Science 
Princess Sumaya University for Technology 

Amman, Jordan




________________________________
 From: Sean Silva <silvas at purdue.edu>
To: Ghassan Shobaki <ghassan_shobaki at yahoo.com> 
Cc: "llvmdev at cs.uiuc.edu" <llvmdev at cs.uiuc.edu> 
Sent: Monday, April 15, 2013 5:03 PM
Subject: Re: [LLVMdev] Power/Energy Awareness in LLVM
 


SeeĀ http://llvm.org/bugs/show_bug.cgi?id=6210.

-- Sean Silva
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130415/0c0dc863/attachment.html>


More information about the llvm-dev mailing list