[LLVMbugs] [Bug 51] New: [inliner] Stepanov abstraction penalty is high

bugzilla-daemon at zion.cs.uiuc.edu bugzilla-daemon at zion.cs.uiuc.edu
Fri Oct 17 23:56:25 PDT 2003


http://zion.cs.uiuc.edu/bugs/show_bug.cgi?id=51

           Summary: [inliner] Stepanov abstraction penalty is high
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P2
         Component: Interprocedural Optimizations
        AssignedTo: sabre at nondot.org
        ReportedBy: sabre at nondot.org


Our current Stepanov abstraction penalty (with the CBE) is 6.38 (which is
ridiculously high).  This is because of two things:

1. The inline-threshhold is set VERY conservatively.  Increasing the inlining 
threshold to 1200 (from 200) reduces the abstraction penalty to 1.01 (which is
basically perfect).

2. The CallGraphSCC passes (like the inliner) do not have FunctionPasses
pipelined into them.  If they did, this would be a non-issue, because the
FunctionPasses would automatically optimize callees before callers, making them
more attractive to inline if they really are small.

Fixing #2 is much more important than fixing #1, so I'm inclined to let this bug
sit until then.  #2 amounts to making the inlining heuristic more accurate,
rather than bumping it up to some arbitrary value.

Note, this is related to Bug 36.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the llvm-bugs mailing list