[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] RE: Problem with large source files in CDT 6.0.1

I've gathered some details on a slightly different aspect of this problem.
A - Opening a 8500 line C++ file
B - The outline appears
C - Highlighting of types/variables appears
I'm running this on a slowish Solaris system, which I'm sure exacerbates the problem.  In CDT 5.0.2, the time between A & B is about 5 seconds and the time between B & C is 1 or 2 seconds.  In CDT 6.0.1, the AB interval is again about 5 seconds, but the BC interval is 20 seconds.  For a huge 38,000 line file, BC is around 3 minutes.
I've turned on all the CDT tracing options that I know of and for the majority of the BC interval there's no corresponding tracing output although there's obviously something going on (CPU usage/100s of mb of allocation/deallocation).
I tried to file a bug report yesterday but it was eaten by a bugzilla internal error (didn't like my choosing OS & HW =other).

From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Kennedy, Stephen M (Steve)
Sent: Monday, September 28, 2009 5:13 PM
To: CDT General developers list.
Subject: [cdt-dev] Problem with large source files in CDT 6.0.1

We have some rather large source files (e.g, around 39,000 lines).  CDT 5.0.2 handled them pretty well--after opening the file it took about 30 seconds for the outline to show up and all the syntax highlighting to appear.  I just set up a CDT 6.0.1 install and have found the large file handling is not working as well.  After opening a large file, the outline shows up in 30s, but it takes an additional 3-4 minutes for the highlighting on variables/types to show up.  During this time, hovers don't usually work (but oddly sometimes do).  Even worse, every F3 (open declaration) operation takes 3-4 minutes to complete.  I'm watching the heap mem usage in jconsole and it uses and releases 200mb of memory 6 times before the operation completes.
Any ideas what's going on here?
Steve Kennedy