[LLVMbugs] [Bug 6210] New: -O3, -Os, -Oe: optimize for running time, binary size, or energy

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Tue Feb 2 03:04:55 PST 2010


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

           Summary: -O3, -Os, -Oe: optimize for running time, binary size,
                    or energy
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Keywords: new-feature
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: bearophile at mailas.com
                CC: llvmbugs at cs.uiuc.edu


Current CPUs like Core duo or i7 are quite redundant, they can perform the same
operations in various ways. Such ways use different amounts of electricity.
Even stripped down CPUs like Atom have some redundancy.

In very big data centres, like Google ones, the limiting factor is often the
amount of electricity used by the very large number of computers present.
Mobile phones, ebook readers, and similar gadgets often have powerful 32 bit
CPUs with many MB of RAM, but for them it's important to maximize the number of
hours they can run with a battery charge.

So in theory it can be added a "-Oe" compilation argument to LLVM that tells
the compiler to compile the code trying to minimize the amount of electricity
the running program will use on the specified CPU.

For example in -Oe mode the compiler can do the opposite of what I've written
in bug 6209, and use the FP stack to store a single float value, saving the
power needed to store an move around 128 bits in a SSE register.


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list