[Qt-creator] QtCreator 4.3 Beta and CMake 3.7.x Server Mode Slowness

Tobias Hunger tobias.hunger at gmail.com
Fri Mar 24 15:07:36 CET 2017


On Fri, Mar 24, 2017 at 2:04 PM, Mike Jackson <imikejackson at gmail.com> wrote:
>> Well, server-mode does get way better information out of cmake, so
>> that is kind of expected:-)
>>
>> What does the code model say (Tools>C++>Inspect C++ code model)? Does
>> it list the expected include directories?
>
>
> I just noticed that the issue is when I look at a .h file in the editor. In
> the project list the .h file is grayed out and the code model only shows a
> few include paths. Its like the Project Model does not know how to handle
> the .h files because they are not compiled?

That should not make any difference: Those header files are not ever
passed on to the code model:-) That just gets the sources and include
paths and then figures stuff out itself.

>> I want to get rid of the tealeaf mode as soon as possible. The name is
>> fitting: What Creator is doing without server-mode is reading in tea
>> leaves, mostly tea leaves that are documented to change meaning at any
>> time!
>>
>> Perpetuating tealeaf mode by having users enable it for newer cmakes
>> is definitely not in my interest!
>
>
> I agree philosophically but there may be a practical side of things. Lets
> see if the issues all get fixed by release of QtCreator 4.3 then I really
> will not have any argument at that point.

I do not find anything to fix: DREAM.3D opens in < 5s for me.

A couple seconds later (for C++ parsing, Test scanning, etc.) the CPU
usage is down to below 5% on all cores.

Ninja reports only 1351 things that need building though, so maybe I
did something wrong?

>> I'm currently trying to set up DREAM.3D for testing:-)
>>
>> So far I found two smaller issues with creator's cmake support due to
>> it -- and I did not even manage to make it build yet:-) What a
>> wonderful test project!
>
> Interesting. What were the issues? If you do find issues with DREAM.3D or
> any of its subprojects just let us know or put in an issue at GitHub.com.
> Our use of CMake may not be completely standard or may be unexpected. Some
> of the CMake code has been in there since 2009.

Small stuff inside Creator. E.g. Creator should *always* show at least
the top level CMakeLists.txt file and a broken configuration of
DREAM.3D broke that. Fixed now.

<snip>
>> Well, cmake is heavily single-threaded, so all your cores will not
>> help with anything cmake-related:-)
>
> So when QtCreator is spinning a beach-ball on macOS and QtCreator is only
> burning 100% is that because CMake is taking a while to do something?

No idea:-)

What does the progress bar say when creator is busy? That should give
a hint as to what is going on. As I said: It takes about 5s to open
DREAM.3D on my laptop and that is a considerably less capable machine
than yours.

> Configuring out project can take upwards of 30 seconds on macOS and Linux
> and even longer on Windows. You can check the times at
> http://my.cdash.org/index.php?project=DREAM3D, clicking the gear icon in the
> upper right side and selecting Advanced View.

I must be doing something wrong then, my machine is much faster than that.

> Maybe popping up a dialog if it is taking longer than xx seconds to run the
> CMake part? That way it does not look like it is hung up? I imagine for
> smaller projects this is not a problem because CMake runs fast enough on
> those projects.

I do not think that cmake is the problem here. You know how long it
takes to run cmake on the command line and Creator should never be
slower than that.

Best Regards,
Tobias



More information about the Qt-creator mailing list