This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/615: 40-fold increase in compilation time for simple function (ss20001002)
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/615: 40-fold increase in compilation time for simple function (ss20001002)
- From: wolfgang dot bangerth at iwr dot uni-heidelberg dot de
- Date: 6 Oct 2000 13:29:45 -0000
- Reply-To: wolfgang dot bangerth at iwr dot uni-heidelberg dot de
- Resent-Cc: gcc-prs at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, jason at gcc dot gnu dot org
- Resent-Reply-To: gcc-gnats@gcc.gnu.org, wolfgang.bangerth@iwr.uni-heidelberg.de
>Number: 615
>Category: c++
>Synopsis: 40-fold increase in compilation time for simple function (ss20001002)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Oct 06 06:36:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator: Wolfgang Bangerth
>Release: unknown-1.0
>Organization:
>Environment:
Linux 2.2.14, SuSE 6
AMD Athlon Processor
egcs-20001002/lib/gcc-lib/i686-pc-linux-gnu/2.97/specs
>Description:
The following code, simplified from something that was
generated automatically shows a 40-fold increase in
compilation time for the latest snapshot (2000/10/02)
compared to gcc2.95.2 (it takes 12 seconds, compared to
0.3 seconds previously), when compiled with -O1.
The function in question has some 90 lines of code, for which
I think 12 seconds are quite long. If some of the
computations are deleted, the much larger compilation
times remain, but it becomes harder to measure the
difference, so I left them in. For finding out the cause,
it may however be helpful to skip some lines; it does not
seem to make much difference which lines are deleted.
It may or may not be of interest to know that if we make the
array x[1] a scalar (since we only access its first element),
then the large compile times vanish. Likewise, if we do
not initialize x[0] by a function call, but directly.
>How-To-Repeat:
Compile with
c++ -c -O1 tria_accessor_3d.cc
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="tria_accessor_3d.cc"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="tria_accessor_3d.cc"
Y2xhc3MgUG9pbnQKewogIHB1YmxpYzoKICAgIGRvdWJsZSAmIG9wZXJhdG9yICgpIChjb25zdCB1
bnNpZ25lZCBpbnQgaW5kZXgpOwp9OwoKUG9pbnQgJiB2ZXJ0ZXggKHVuc2lnbmVkIGludCk7CgoK
ZG91YmxlIGZvbyAoKQp7CiAgY29uc3QgZG91YmxlIHhbMV0gPSB7IHZlcnRleCgwKSgwKSB9OwoK
ICBkb3VibGUgczIsIHMzLCBzNCwgczUsIHM2LCBzNywgczg7CgogIHM4ID0geFswXSp4WzBdKnhb
MF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0K
KnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXS14
WzBdKnhbMF0qeFswXSp4WzBdK3gKWzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4WzBdKnhbMF0qeFsw
XSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeApbMF0teFswXSp4WzBd
KnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4
WzBdKnhbMF0qCnhbMF0reFswXSp4WzBdKnhbMF0qeFswXTsKICBzNCA9IHM4K3hbMF0qeFswXSp4
WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qCnhb
MF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXSt4WzBd
KnhbMF0qeFswXSp4WzBdLXhbMF0KKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0t
eFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdK3gKWzBdKnhbMF0qeFswXSp4
WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0rMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0rczUrczc7CiAg
czggPSBzNC0yLjAqeFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0q
eFswXSp4WzBdKnhbMF0teApbMF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4WzBdKnhb
MF0rMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKngKWzBdKnhbMF0reFswXSp4WzBd
KnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4
WzBdKgp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hb
MF0qeFswXSp4WzBdKnhbMF07CiAgczcgPSBzOC14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFsw
XSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXS14WzBdKgp4WzBdKnhbMF0qeFswXS14WzBd
KnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14
WzBdCip4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhb
MF0teFswXSp4WzBdKnhbMF0qeFswXSt4ClswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFsw
XSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXTsKICBzOCA9IHhb
MF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBd
K3hbMF0qeApbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0q
eFswXS14WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qCnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4
WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0KKnhb
MF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBd
KnhbMF0qeFswXSp4WzBdOwogIHM2ID0gczgreFswXSp4WzBdKnhbMF0qeFswXS0yLjAqeFswXSp4
WzBdKnhbMF0qeFswXSsyLjAqeFswXSp4WzBdKnhbMF0qeApbMF0tMi4wKnhbMF0qeFswXSp4WzBd
KnhbMF0rMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKngK
WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFsw
XSp4WzBdKnhbMF0qeFswXS14WzBdKgp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBd
K3hbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBdCip4WzBdKnhbMF0q
eFswXStzNzsKICBzOCA9IHM2K3hbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFsw
XS14WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4ClswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0q
eFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4WzBdKngKWzBdLTIu
MCp4WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4
WzBdKnhbMF0teFswXSp4ClswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhb
MF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF07CiAgczcgPSBzOC14WzBdKnhbMF0qeFsw
XSp4WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdLTIuMCp4WzBdKnhbMF0qeFswXSp4ClswXSt4
WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0rMi4wKnhbMF0qeFswXSp4WzBd
KnhbMF0tMi4wKnhbMF0qeApbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4
WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qCnhbMF0qeFswXSp4WzBdK3hb
MF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBd
LTIuMCoKeFswXSp4WzBdKnhbMF0qeFswXTsKICBzOCA9IHM3KzIuMCp4WzBdKnhbMF0qeFswXSp4
WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKngKWzBdK3hbMF0qeFsw
XSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0q
eFswXSp4WzBdKgp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4
WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdCip4WzBdLXhbMF0qeFswXSp4WzBdKnhb
MF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4Clsw
XSp4WzBdOwogIHM1ID0gczgreFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBd
K3hbMF0qeFswXSp4WzBdKnhbMF0teFswXSoKeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0q
eFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFswXQoqeFswXSp4
WzBdKnhbMF0rMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXSt4WzBd
KnhbMF0qeFswXSp4WzBdCi14WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0r
Mi4wKnhbMF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSoKeFswXSp4WzBdLTIuMCp4WzBd
KnhbMF0qeFswXSp4WzBdOwogIHM4ID0gczUtMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0rMi4wKnhb
MF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4ClswXSp4WzBdKzIuMCp4WzBdKnhbMF0q
eFswXSp4WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reApb
MF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBd
LXhbMF0qeFswXSp4WzBdKnhbMF0rCnhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0q
eFswXS14WzBdKnhbMF0qeFswXSp4WzBdLTIuMCp4WzBdKnhbMF0qeFswXSoKeFswXTsKICBzNyA9
IHM4KzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4
WzBdKnhbMF0qeApbMF0qeFswXS0yLjAqeFswXSp4WzBdKnhbMF0qeFswXS0yLjAqeFswXSp4WzBd
KnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdLXgKWzBdKnhbMF0qeFswXSp4WzBdK3hbMF0q
eFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4WzBdKwp4
WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFsw
XS14WzBdKnhbMF0qeFswXSp4WzBdCi14WzBdKnhbMF0qeFswXSp4WzBdOwogIHM4ID0gczcreFsw
XSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0t
eFswXSoKeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4
WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFswXQoqeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhb
MF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4WzBdKnhbMF0reApbMF0qeFsw
XSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4WzBdKnhb
MF0rMi4wKnhbMF0qeApbMF0qeFswXSp4WzBdOwogIHM2ID0gczgrMi4wKnhbMF0qeFswXSp4WzBd
KnhbMF0rMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0rMi4wKnhbMF0qeFswXSp4ClswXSp4WzBdLTIu
MCp4WzBdKnhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0q
eFswXS14WzBdKngKWzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXhbMF0qeFswXSp4
WzBdKnhbMF0tMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0teApbMF0qeFswXSp4WzBdKnhbMF0tMi4w
KnhbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeFswXSp4
ClswXSsyLjAqeFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdOwoKICBzMyA9
IHM4K3hbMF0qeFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhbMF0qeFswXSsyLjAqeFswXSp4WzBd
KnhbMF0qeFswXQotMi4wKnhbMF0qeFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0qeFswXS0y
LjAqeFswXSp4WzBdKnhbMF0qeFswXSsyLjAqeFswXSp4ClswXSp4WzBdKnhbMF0reFswXSp4WzBd
KnhbMF0qeFswXS0yLjAqeFswXSp4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXgK
WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4WzBdKnhbMF0qeFswXSp4WzBdKzIuMCp4WzBdKnhbMF0q
eFswXSp4WzBdLTIuMCp4WzBdKngKWzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSp4WzBdLXhb
MF0qeFswXSp4WzBdKnhbMF07CgogIHM1ID0gczgreFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhb
MF0reFswXSp4WzBdKnhbMF0teFswXSp4WzBdKnhbMF0reFswXSoKeFswXSp4WzBdLXhbMF0qeFsw
XSp4WzBdLXhbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdK3hbMF0qeFswXSp4WzBdK3hbMF0q
eFswXQoqeFswXSt4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXSt4WzBdKnhbMF0qeFswXS14
WzBdKnhbMF0qeFswXS14WzBdKnhbMF0qeApbMF0reFswXSp4WzBdKnhbMF0reFswXSp4WzBdKnhb
MF0teFswXSp4WzBdKnhbMF0rczc7CiAgczQgPSAxL3M1OwogIHMyID0gczMqczQ7CiAgcmV0dXJu
IHMyOwp9Owo=