From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22418 invoked by alias); 6 Aug 2005 00:57:05 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 22393 invoked by uid 22791); 6 Aug 2005 00:57:01 -0000 Received: from 216-239-45-4.google.com (HELO 216-239-45-4.google.com) (216.239.45.4) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Sat, 06 Aug 2005 00:57:01 +0000 Received: from [172.29.52.81] (fteri.smo.corp.google.com [172.29.52.81]) by brian.corp.google.com with ESMTP id j760uuME031433 for ; Fri, 5 Aug 2005 17:56:57 -0700 Message-ID: <42F40AD8.6080602@cis.udel.edu> Date: Sat, 06 Aug 2005 00:57:00 -0000 From: Anthony Danalis User-Agent: Mozilla Thunderbird 1.0 (X11/20050207) MIME-Version: 1.0 To: gcc@gcc.gnu.org Subject: c++ performance regressions in gcc > 2.95.3 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2005-08/txt/msg00197.txt.bz2 We observed that certain large C++ applications perform worse in gcc-3.x and gcc-4.x than they did in gcc-2.95.3. On the theory that at least some of the cause would show up in microbenchmarks, we tried running bench++ with both old and new toolchains. Because we suspect that part of the regression is due to libstdc++, we also measured performance using stlport. Here are our results. A table of nanoseconds-per-iteration for each individual microbenchmark in bench++ for g++-2.95.3, and for g++-4.0.1 and g++-4.1.0-20050723 with and without STLport, is at http://www.cis.udel.edu/~danalis/OSS/bench_plus_plus/files/report-f15_m2_X_2.6-absolute.txt A table normalized relative to the gcc-2.95.3 results is at http://www.cis.udel.edu/~danalis/OSS/bench_plus_plus/files/report-f15_m2_X_2.6.txt The interesting bits are summarized in a table showing just the performance regressions, and annotated with descriptions of the microbenchmarks which regressed. It's at http://www.cis.udel.edu/~danalis/OSS/bench_plus_plus/results.html We reported one of the regressions already as http://gcc.gnu.org/PR22563 . There seem to be at least ten others that might be worth reporting. I'll try to post bug reports for a few, but my summer internship is running out soon. If anyone else has time to look at the data, I'd appreciate suggestions or criticism; maybe I can fix a few problems in my benchmark scripts before I turn into a pumpkin. Anthony Danalis & Dan Kegel