[Qt-creator] QtCreator 4.3 Beta and CMake 3.7.x Server Mode Slowness
Mike Jackson
imikejackson at gmail.com
Thu Mar 23 20:13:27 CET 2017
Tobias Hunger wrote:
> Hi Mike,
>
> you are not the first to report this:-/ This needs to be fixed before
> the release.
>
> On Thu, Mar 23, 2017 at 6:40 PM, Mike Jackson<imikejackson at gmail.com> wrote:
>> I have been testing the nightly builds of 4.3 and the main issue that I am
>> running into for our project is that most everything is very slow. From
>> loading the CMake based project, to "command-K" to code-completion. The
>> slowness is somehow attributed to using CMake 3.7.x and its server mode. If
>> I load my project using CMake 3.6 then the everything returns be being fast
>> again.
>
> That is interesting: The only difference between server mode and
> tealeaf reading mode is in getting data from cmake and parsing that
> data. After the project data is read, everything is using exactly the
> same code.
>
> The project tree is a bit different, but that should not be noticeable.
One thing that I notice is that with Server-mode the code completion
engine can not find things like #include <QtWidgets/QDialog> which
basically messes up the code completion on the file.This does not
preclude the fact that our CMake may be non-optimal and missing some
include_directories() and we just have never noticed it before on Visual
Studio, Ninja, NMake, Makefiles and Xcode, but none of those use
Server-Mode so we may be in new territory.
>
>> My point is NOT to complain since I understand these features are
>> experimental and still being developed. If by the the final release the
>> slowness is still there, is there going to be a way to turn OFF the CMake
>> server mode link if I am using CMake 3.7?
>
> None is planed.
I know it is late, but I would _really_ want to discuss that. Again, if
there is time or it would be simple to implement, like a check box in
the CMake configuration widget.
>
>> We are starting to depend on a few
>> of the CMake 3.7 features but then that causes QtCreator to just drag down
>> in speed to the point where it becomes somewhat unusable.
>
> I never had that happen to me before. Is one of the projects you work
> with open source so that I can test with that?
All of our projects are open-source.
http://www.github.com/bluequartzsoftware/dream3d. There are other repos
that will need to be pulled. I there are some really rough docs that
point you to them. We have a bunch of dependent libraries. If you clone
https://github.com/BlueQuartzSoftware/DREAM3DSuperbuild that should help
build up an SDK for DREAM.3D to use. I have not tested it too much on
newer Linux distributions so not sure how well it would behave. You
could probably get DREAM.3D to compile without the DREAM3DSuperbuild by
just pointing CMake to all the various locations on your Linux machine.
Just some stats on the project with a full compile of all our Plugins
there is something like 2400 compilable files. We do depend on things
like Boost and Eigen which are heavily templated which might be the cause.
I would also be ok setting up a Google Hangout and screen sharing my
machine so you can see what is going on.
>
> Could you try with clean settings (just run with -settingspath
> /tmp/foo)? Does it get faster if you disable non-essential plugins?
>
> Did you notice that slowdown before? You said you started to depend on
> some of those features, so I guess you did run server-mode before:-)
I jumped on the Qt4.3 bandwagon with CMake 3.7 pretty quickly to test it
out. If I remember correctly back in January time frame the speed wasn't
noticeably slower. I would have to go pull those versions and start
testing to figure out when it really went slow.
I restarted with the -settingspath /tmp/foo and the code completion
seems to subjectively be faster. THe command-K is definitely faster.
Project loading is still slow, to the point where I get the spinning
beach ball for about 1 minute. This is on a 12 Core (24 Threads) Mac Pro
running macOS 10.10.5 off an SATA SSD (850 EVO).
>
>> Thanks and keep up the great work with the CMake integration. It has come so
>> far and I really enjoy working with QtCreator.
>
> You are welcome.
>
> Best Regards,
> Tobias
Thanks
Mike Jackson
More information about the Qt-creator
mailing list