Does the symbol update time depend on number of binaries in our project?

 

We have a project with one main application, but we also have a metric tonne of gtest applications to test our various components. With each binary being represented by four contexts, could this be a reason for slow symbol builds?

I'm battling a problem where whenever we add a .cpp file I need to reload the cmake files and that together with the symbol update takes about 5 minutes.

3 comments

Hi Olof.

Sorry for the inconvenience!

Could you please do the following:

1) Please try enabling memory indicator (Preferences | Appearance & Behavior | Appearance | Show memory indicator) and keep an eye on it for some time. If it is close to the limit at the time when you are experiencing the problems, then try increasing the Xmx JVM option according to this guide.

2) Could you please reload CMake via CMake console command:

cmake -G "Unix Makefiles" <path_to_CMakeLists.txt>

You can compare the time for CLion CMake reloading and for the console CMake reloading. We suppose that these values should be about the same. Is it the same?

3) If it does not help, please capture a CPU snapshot during the CMake reload and send it to clion-support at jetbrains.com or on download it on our ftp which is described in the guide.

0

1. I have -Xmx set to 8GB over the 2GB which is the default. My memory usage is typically around 4Gb and is rarely going over 6GB.

2. Running that command takes about 1 second.

3. Unfortunately I can't send you a CPU snapshot. It contains too much sensitive information.

Here's another discussion I've had on this problem that might contain some helpful information: http://blog.jetbrains.com/clion/2016/02/clion-1-5-eap-build-with-variadic-templates-support/#comments

 

 

0

A clarification regarding item 2.

When I hit reload in CLion it appears that the reloading of CMake takes about 5 seconds, which would be consistent with you all calling it four times for the Release/Debug and the two other contexts. After that it goes into a background task called Updating Indices with sub-state Loading Symbols and then Updating Symbols...

Loading symbols is quick but Updating symbols takes a long time. It is in that state, Updating symbols that takes about 5 minutes to complete.

Actually, I just tried it to make sure the above was correct. It was except this time the update symbols took just a little over a minute. It seems like it sometimes takes 5 minutes and sometimes about a minute. I have timed both cases several times. It may have to do with the version I'm using. Or maybe it has to do with how long CLion has been running? This time I had just restarted CLion. I haven't found a pattern.

 

0

Please sign in to leave a comment.