Quuxplusone / LLVMBugzillaTest

0 stars 0 forks source link

GLEW build performance #23707

Open Quuxplusone opened 9 years ago

Quuxplusone commented 9 years ago
Bugzilla Link PR23708
Status NEW
Importance P normal
Reported by d.m.bugs@web.de
Reported on 2015-05-30 08:22:25 -0700
Last modified on 2016-12-14 12:03:06 -0800
Version 3.6
Hardware PC Linux
CC baskanov@gmail.com, chandlerc@gmail.com, fuscated@gmail.com, llvm-bugs@lists.llvm.org, rafael@espindo.la, taskov@gmail.com
Fixed by commit(s)
Attachments t.i.bz2 (103751 bytes, application/x-bzip)
t5.bc (878276 bytes, application/octet-stream)
Blocks
Blocked by
See also
Building GLEW with clang takes 50x longer than building GLEW with GCC.

With clang: make  853.40s user 2.66s system 99% cpu 14:18.96 total
With gcc:   make  28.35s user 0.47s system 99% cpu 28.987 total

Steps to reproduce:

git clone https://github.com/nigels-com/glew
cd glew
make extensions
mkdir BUILD
cd BUILD
cmake -DCMAKE_CXX_COMPILER=$(which clang++) -DCMAKE_C_COMPILER=$(which clang) -
DBUILD_UTILS=OFF ../build/cmake
time make

System:
 - clang: 3.6.1
 - gcc:   5.1.0
 - OS:    Arch Linux
Quuxplusone commented 9 years ago

This issue only occurs when building with -O2 or -O3.

Quuxplusone commented 9 years ago
Some benchmarks with other clang versions: (all with -O3)

Clang trunk: make  1544.49s user 2.25s system 99% cpu 25:49.23 total
Clang 3.6.1: make  815.09s user 1.82s system 99% cpu 13:37.94 total (2nd run)
Clang 3.5.2: make  190.69s user 0.94s system 99% cpu 3:12.46 total
Clang 3.4.2: make  197.81s user 1.52s system 99% cpu 3:19.68 total
Quuxplusone commented 9 years ago

Attached t.i.bz2 (103751 bytes, application/x-bzip): testcase

Quuxplusone commented 9 years ago

Attached t5.bc (878276 bytes, application/octet-stream): ir testcase

Quuxplusone commented 8 years ago
Apple LLVM version 7.0.0 (clang-700.0.53):
real    27m16.023s
user    25m30.471s
sys    0m21.402s

Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn):
real    0m25.971s
user    0m25.409s
sys    0m0.463s
Quuxplusone commented 7 years ago
There is progress:

clang version 3.5.0 (tags/RELEASE_350/final); Target: x86_64-unknown-linux-gnu
real    0m20.056s
user    0m19.746s
sys 0m0.160s

clang version 3.9.0 (tags/RELEASE_390/final);Target: x86_64-unknown-linux-gnu
real    0m48.282s
user    0m48.142s
sys 0m0.106s