This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Hunting for performance regressions in libstdc++


> I have a sneaking suspicion that some of my app's
> performance problems might be due to gcc-3.4.3's libstdc++
> being somehow slower than SGI's STL, so I'm planning
> on doing some performance testing of various implementations
> of STL.

I must point out to you that you are guessing. You are trying to narrow
down 6 years of compiler/runtime change to the STL.

This assumption seems pretty tenuous.

Benchmarking STL's might be fun. However, it you want to make your app
faster I suggest profiling to narrow down the issues to a manageable
number.

> So far, I've found five candidates:
> 
> tramp3d (http://www.tat.physik.uni-tuebingen.de/~rguenth/gcc/tramp3d-v3.cpp.gz)
> botan (http://botan.randombit.net/)
> have been mentioned recently as C++ test cases.
> Both reportedly have regressed in performance recently
> (http://www.mail-archive.com/gcc@gcc.gnu.org/msg05755.html)
> 
> Peter Schmid ran some performance regression tests
> three-four years ago using bench_plus_plus:
> http://gcc.gnu.org/ml/libstdc++/2001-03/msg00188.html
> http://gcc.gnu.org/ml/libstdc++/2002-03/msg00165.html
> and found performance regressions in gcc-3.1 relative to gcc-2.95.3
> Perhaps it's time to run that suite again.

Um. 

Known libstdc++ performance regressions (now fixed, hopefully) are in
testsuite/performance. You might familiarize yourself with "make check-performance."

If you can find more performance issues, please let us know.

If you can find more, and provide a patch, or a suitable testcase for the
performance testsuite, we'll give you a gold star.

These are very, very cool gold stars, suitable for wearing at most
hacker gatherings.

-benjamin


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]