Return-Path: Delivered-To: apmail-incubator-stdcxx-dev-archive@www.apache.org Received: (qmail 90274 invoked from network); 23 Aug 2007 15:48:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Aug 2007 15:48:46 -0000 Received: (qmail 88538 invoked by uid 500); 23 Aug 2007 15:48:43 -0000 Delivered-To: apmail-incubator-stdcxx-dev-archive@incubator.apache.org Received: (qmail 88521 invoked by uid 500); 23 Aug 2007 15:48:43 -0000 Mailing-List: contact stdcxx-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-dev@incubator.apache.org Received: (qmail 88510 invoked by uid 99); 23 Aug 2007 15:48:43 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2007 08:48:43 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [208.30.140.160] (HELO moroha.quovadx.com) (208.30.140.160) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Aug 2007 15:49:16 +0000 Received: from qxvcexch01.ad.quovadx.com ([192.168.170.59]) by moroha.quovadx.com (8.13.6/8.13.6) with ESMTP id l7NFm3CX011959 for ; Thu, 23 Aug 2007 15:48:03 GMT Received: from [10.70.3.113] ([10.70.3.113]) by qxvcexch01.ad.quovadx.com with Microsoft SMTPSVC(6.0.3790.1830); Thu, 23 Aug 2007 09:47:38 -0600 Message-ID: <46CDAC3D.7070502@roguewave.com> Date: Thu, 23 Aug 2007 09:48:13 -0600 From: Martin Sebor Organization: Rogue Wave Software, Inc. User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4 MIME-Version: 1.0 To: stdcxx-dev@incubator.apache.org Subject: Re: prolem with performance References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 23 Aug 2007 15:47:38.0842 (UTC) FILETIME=[EEDC43A0:01C7E59C] X-Virus-Checked: Checked by ClamAV on apache.org Nothing really comes to mind. 1.3.0 is ancient (2000?) and lots has changed since then so it's hard to say in general. Normally, we would need a test case demonstrating the problem. Ideally against 1.3.0, although I'm not sure how to even build it. The gprof utput for both versions could be useful as well. But wait, you mentioned _C_depth(). I think the problem might be easier to solve: _C_depth() is a debugging function that gets called (in debug mode only) from insert() and erase() to verify that the tree is balanced. The function runs in O(N*log(N)) so it does have a significant cost, but it should never be called when debugging is disabled (i.e., when _RWSTDDEBUG is not #defined). If calling the function even in debug mode is causing problems for the customer the fix should be straightforward: guard the calls to it with some new macro to give users the ability to disable it even when _RWSTDDEBUG is #defined. If this is something the customer would be interested in have them open an issue for it in Jira. Martin Jeremy Dean wrote: > Dear Rogue Wave Support team, > > One of our customers got a problem when > update to RogueWave/SourcePro C++ Core v9 > from Rogue Wave C++ Standard Library Limits Release v1.3.0 > > A problem is that a performance turns worse. > It came to take 15 minutes for processing before for 10 seconds. > > The customer says that the following functions are bottlenecks. > __rw::__rb_tree(...)::_C_depth(...) > > The customer investigated it by a profiling tool called gprof. > > What will be thought about as a cause? > > > Best Regards, > Yasuhiro > > Jeremy Dean > Rogue Wave Software, Inc. > Technical Support > Phone: 303-545-3205 -- 1-800-404-4767 > E-mail: support@roguewave.com > Web: http://www.roguewave.com/support > Knowledge Base entries: > http://www.roguewave.com/kbdocs/search.html > View issues online at: > http://www.roguewave.com/youraccount/login/ > >