News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

Projects with many files - very slow project opening/creating

Started by vbspam, May 06, 2011, 02:10:26 PM

Previous topic - Next topic

vbspam

Hi guys

I am experiencing very slow opening (or creating) of projects containing large number of source files.
The slowdown is visible in projects with about 3000 files however I have project with 18000 source files and at this point the CodeBlocks becomes unusable for me. When I speak about slow I mean delay (program is not responding) for more than 5 minutes. In case of 18k+ files it is more than 60minutes. The funny fact is that after I wait this period CodeBlocks works reasonably fast and can be used even on linux.

I did some investigation and found that the problem is in the periodical call of the function wxListBase::Find [(wxwindows)src/common/list.cpp] .
This function is called by Find [projectfile.h] from function ProjectFile::AddBuildTarget [projectfile.cpp].

The problem I see there is that the "find" function implementation is doing simple linear search with == comparsion. As it is used periodically for each file being added to the project tree, it consumes all available CPU time and results in horrible delay.

First I thought that the problem is in my .cbp file (what is generated by cmake) however the adding files to the project has very similar behaviour.

So back to my question: Is there somebody who is experiencing similar problems? If so did you find any workaround or solution?
And finally question to CodeBlocks developers: Don't you see a way how this could be improved?

stahta01

C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

Jenna