This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Results for g++ 3.3 application testing on i686-pc-linux-gnu
- From: Peter Schmid <schmid at snake dot iap dot physik dot tu-darmstadt dot de>
- To: <libstdc++ at gcc dot gnu dot org>
- Cc: <mark at codesourcery dot com>, <gcc at gcc dot gnu dot org>
- Date: Mon, 30 Sep 2002 01:34:37 +0200 (CEST)
- Subject: Results for g++ 3.3 application testing on i686-pc-linux-gnu
Some applications do no longer compile. The build of pooma-gcc
breaks with an ice while compiling
pooma-gcc/src/Layout/DynamicLayout.cmpl.cpp. Compiling blitz still
does not work, cf. PR c++/5504. There are nine regressions when
running the new boost test harness (bjam based). I encountered an
increase in code quality within the last 14 days. The speed tests of
Ftensor take less time to complete than before. Also the Abstraction
Penalty of the stepanov test is lower. Comparing the oopack and
stepanov results at different optimization level shows that the
performance of the optimizer is more consistent than before, the
performance at the -O2 level is better than at -O, except for
Complex. Maybe there is some room for improvement at -O3; confer the
stepanov results.
For the first time the ratio for one of these tests, Matrix, is
smaller than one! I would appreciate it very much if an expert could
resolve why the performance of Complex is so bad for oop/c++ and why
is it worse at the -O2 level.
Here are the results in detail:
stepanov_v1p2.C:
-O0
Abstraction Penalty: 8.49
-O
Abstraction Penalty: 1.26
-O2
Abstraction Penalty: 1.04
-O3
Abstraction Penalty: 1.14
-O2 -finline-limit=10000
Abstraction Penalty: 1.10
-O2 -finline-limit=100000
Abstraction Penalty: 1.17
OOPACK Version 1.7:
Max=100000 Matrix=1000 Complex=100000 Iterator=100000
-O
Seconds Mflops
Test Iterations C OOP C OOP Ratio
---- ---------- ----------- ----------- -----
Max 100000 1.9 2.0 52.6 50.5 1.0
Matrix 1000 3.7 4.1 67.6 61.1 1.1
Complex 100000 9.8 18.8 82.0 42.6 1.9
Iterator 100000 1.1 2.2 186.9 89.7 2.1
-O2
Seconds Mflops
---- ---------- ----------- ----------- -----
Max 100000 1.7 1.7 59.9 57.5 1.0
Matrix 1000 2.4 2.2 103.3 114.2 0.9
Complex 100000 9.8 26.0 81.5 30.8 2.6
Iterator 100000 1.2 1.4 165.3 148.1 1.1
(g++ 2.95.3 -O2
Test Iterations C OOP C OOP Ratio
---- ---------- ----------- ----------- -----
Max 100000 2.7 3.1 36.9 32.5 1.1
Matrix 1000 2.1 2.4 118.5 102.5 1.2
Complex 100000 7.3 26.7 109.1 30.0 3.6
Iterator 100000 1.1 2.3 178.6 88.1 2.0)
current boost cvs:
Nine tests fail. Seven are taken from the
libs/numeric/ublas part of the test suite. Those do not compile because of
a template related problem (cf. PR c++/8006).
libs/date_time/test/testtime_resolution_traits.cpp is
rejected with a "testtime_resolution_traits.cpp:46: error: integer
constant is too large for "long" type" message. Earlier g++ compilers
accept this code with a warning. libs/signals/test/signal_n_test.cpp
is rejected by the compiler. I do not know whether this source code is
legal. It is accepted by gcc 2.95.3, though.
blitz-20001213:
wei-ku-1.cpp does not compile. Please cf. PR c++/5504.
root_v3.03.09:
Everything works, except for test/bench.cxx. This test does compile
for the first time, but the output file, cbench.ps, seems wrong. Though
the file is not-empty, printing it results in a blank page.
pooma-gcc:
pooma-gcc/src/Layout/DynamicLayout.cmpl.cpp does not compile.
Code from Josuttis' Book "The C++ Standard Library":
Everything works fine, except for the problem described in PR
libstcd++/6745.
mtl-2.1.2-21:
No problems detected, after fixing some glitches.
STLport-4.5.3/STLport-5.0-0409
The libraries compile fine but the eh test suite crashes in "[deque]
n-size constructor (const)". This happens only when the -O3
optimization is active while compiling the test suite.
FTensor--main--1.1pre20:
No problems detected.
System setup:
SuSE 7.3
Glibc 2.2.4 + patches
Linux 2.4.18
GNU ld version 2.13.90.0.4 20020814
g++ -v
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.3/specs
Configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-languages=c,c++,f77,objc --enable-__cxa_atexit
Thread model: posix
gcc version 3.3 20020927 (experimental)
Hope this helps,
Peter Schmid