[llvm-bugs] [Bug 39110] New: Huge compile time with loop unroll benchmark with -O3

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Sep 28 03:11:46 PDT 2018


https://bugs.llvm.org/show_bug.cgi?id=39110

            Bug ID: 39110
           Summary: Huge compile time with loop unroll benchmark with -O3
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Scalar Optimizations
          Assignee: unassignedbugs at nondot.org
          Reporter: david.bolvansky at gmail.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 20934
  --> https://bugs.llvm.org/attachment.cgi?id=20934&action=edit
time report of passes

Bechmark:
https://gitlab.com/chriscox/CppPerformanceBenchmarks/blob/master/loop_unroll.cpp


Both GCC and Clang versions are close to the top of trunk.

time clang++  -std=c++11 -O3   loop_unroll.cpp   -o loop_unroll

real    0m37,371s
user    0m37,247s
sys     0m0,124s
time g++  -std=c++11 -O3   loop_unroll.cpp   -o loop_unroll

real    0m17,509s
user    0m17,267s
sys     0m0,196s
time g++  -std=c++11  loop_unroll.cpp   -o loop_unroll

real    0m2,567s
user    0m2,478s
sys     0m0,089s
time clang++  -std=c++11  loop_unroll.cpp   -o loop_unroll

real    0m1,795s
user    0m1,744s
sys     0m0,050s

===-------------------------------------------------------------------------===
                      ... Pass execution timing report ...
===-------------------------------------------------------------------------===
  Total Execution Time: 38.8286 seconds (38.7849 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  ---
Name ---
   5.5111 ( 15.0%)   0.3874 ( 18.7%)   5.8985 ( 15.2%)   5.8983 ( 15.2%)  X86
DAG->DAG Instruction Selection
   2.0702 (  5.6%)   0.0664 (  3.2%)   2.1366 (  5.5%)   2.1347 (  5.5%)  Loop
Strength Reduction
   1.8916 (  5.1%)   0.0472 (  2.3%)   1.9388 (  5.0%)   1.9379 (  5.0%) 
Combine redundant instructions #8
   1.5240 (  4.1%)   0.0868 (  4.2%)   1.6108 (  4.1%)   1.6097 (  4.2%) 
Function Integration/Inlining
   1.3555 (  3.7%)   0.0794 (  3.8%)   1.4349 (  3.7%)   1.4337 (  3.7%) 
Induction Variable Simplification
   1.2232 (  3.3%)   0.0651 (  3.1%)   1.2882 (  3.3%)   1.2872 (  3.3%) 
Global Value Numbering
   1.1388 (  3.1%)   0.0472 (  2.3%)   1.1860 (  3.1%)   1.1851 (  3.1%) 
Combine redundant instructions #6
   1.0846 (  3.0%)   0.0502 (  2.4%)   1.1348 (  2.9%)   1.1340 (  2.9%) 
Combine redundant instructions #2
   1.0596 (  2.9%)   0.0215 (  1.0%)   1.0811 (  2.8%)   1.0794 (  2.8%) 
Unroll loops #2



Full output of clang++  -std=c++11 -O3   loop_unroll.cpp   -o loop_unroll
-ftime-report is attached.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20180928/5366a7ee/attachment.html>


More information about the llvm-bugs mailing list