[LLVMbugs] [Bug 209] NEW: The optimizer is slow on this testcase
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Thu Jan 15 08:50:27 PST 2004
http://llvm.cs.uiuc.edu/bugs/show_bug.cgi?id=209
Summary: The optimizer is slow on this testcase
Product: libraries
Version: 1.0
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Scalar Optimizations
AssignedTo: sabre at nondot.org
ReportedBy: sabre at nondot.org
When running gccas on this (large) testcase, the global optimizer takes a very
long time (this is compiled in debug mode, so it's a ~3x slower than in release
mode, but it's still bad):
Total Execution Time: 415.0599 seconds (415.0464 wall clock)
---User Time--- --System Time-- --- Name ---
290.8299 ( 70.2%) 0.7900 ( 87.7%) Global Common Subexpression Elimination
67.7800 ( 16.3%) 0.0099 ( 1.1%) Scalar Replacement of Aggregates
46.3699 ( 11.1%) 0.0800 ( 8.8%) Function Integration/Inlining
7.9800 ( 1.9%) 0.0200 ( 2.2%) Combine redundant instructions
0.3999 ( 0.0%) 0.0000 ( 0.0%) Combine redundant instruction
...
3086 gcse - Number of instructions removed
8 inline - Number of functions deleted because all callers found
2002 inline - Number of functions inlined
10925 instcombine - Number of dead inst eliminated
19223 instcombine - Number of insts combined
7314 scalarrepl - Number of allocas promoted
2413 scalarrepl - Number of allocas broken up
All of the rest of the passes take less than .3s to run.
The GCSE slowdown is because the 'basicaa' pass currently has to recompute all
of the information it needs for every query, which is very slow (there are some
infrastructure improvements needed to fix this). There are many alias pairs
that GCSE asks about.
I'm not sure why SRoA is taking so long, besides the fact that it is doing a lot
of expansions. The inlining pass can also probably be sped up. These two can
be improved just by looking at the profiling output probably.
This bug is just a placeholder so that I remember to get back to this when I
have time.
-Chris
------- 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