AppImages of v0.18 release builds

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
leong
Posts: 40
Joined: Mon Apr 11, 2016 8:46 pm

Re: AppImages of v0.18 release builds

Post by leong »

Sorry, typo, meant "Start"
User avatar
easyw-fc
Veteran
Posts: 3633
Joined: Thu Jul 09, 2015 9:34 am

Re: AppImages of v0.18 release builds

Post by easyw-fc »

looo wrote: Wed Apr 17, 2019 7:14 pm yes it would be interesting to see if these performance issues are related to conda or appimage.
Here some more reports:
1) in FC 0.18.1 installed from PPA I have Py 3.6.7 & Qt 5.9.5
2) in FC 0.18 Appimage 16110 I have Py 3.6.7 & Qt 5.6.2
[FreeCAD_0.18-16110-Linux-Conda_Py3Qt5_glibc2.12-x86_64.AppImage]

Now the behavior:
1) install KiCADStepUpMod from Tools Addons
2) re-start FC and switch to KiCadStepUp addon
3) under the menu 'ksu Tools', 'Demo' click on the 'd-pack.kicad_mod' item.

This will build a demo inside FC blazing fast using the PPA version.
With the Appimage instead I get a very long delay creating the model (many seconds) and the CPU load goes up to 100%
What I also noticed is that if I move the mouse, the interface get immediately responsive and the building of the model just speeds up.

Is something that is familiar to anyone? Could it be related to Qt 5.6.2 release?
I have a NVidia GPU with proprietary drivers.

Thanks in advance
Maurice
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

looo wrote: Thu Apr 18, 2019 8:51 am @triplus seems to have it solved. I see 18.1 appimage and dmg uploaded to github release page.
I noticed that today the stable AppImage build failed again, due to Conda package download (network issue). I manually triggered the build just now and stable AppImage was uploaded successfully again. At some point we will turn off stable AppImage/DMG daily builds, once things mature more.
Then this was a simple fix. Does this mean the appimage should also work on something like alpine-linux?
I found this on the Wiki:
Although it is more lightweight, it does have the significant drawback of being binary incompatible with glibc. Thus, all software must be compiled for use with uClibc to work properly. As of April 9, 2014[15], Alpine Linux switched to musl, which is partially binary compatible with glibc.
Therefore likely issues can be expected.
regarding the theming issue: Maybe including some other removed packages will also get the theme back. Maybe we should look for a solution to avaoid the gtk messages.
Indeed.
Currently the conda-packages are not very stable (crash). If the problem is really caused by qt5.6.2 [1] maybe updating to 5.6.3 is a solution. If these versions are binary-compatible we can try to force the appimage using this version.
If you don't include PIPTools on macOS, and do some tests, more stable or still experiencing crashing? In addition, when testing, remove all installed external modules first.
easyw-fc wrote: Thu Apr 18, 2019 9:34 pm This will build a demo inside FC blazing fast using the PPA version.
With the Appimage instead I get a very long delay creating the model (many seconds) and the CPU load goes up to 100%
What I also noticed is that if I move the mouse, the interface get immediately responsive and the building of the model just speeds up.

Is something that is familiar to anyone? Could it be related to Qt 5.6.2 release?
Yep. This reads like it is to some extent viewport related. Therefore using newer version of Qt likely should increase performance.

P.S. I investigated the AppImage help issue situation today a bit more and i now understand on how Conda manages (runtime) paths. This is a bit of a problem indeed. I likely won't have time to work on this until next week. But then again this is not a show stopper, crashing on macOS is. Hopefully the PIPTools suggested workaround will improve things. If not i have an additional idea to test out, but that likely won't happen before next week.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

triplus wrote: Thu Apr 18, 2019 11:39 pm If you don't include PIPTools on macOS, and do some tests, more stable or still experiencing crashing? In addition, when testing, remove all installed external modules first.
Actually I don't think things are that bad for the bundle. I have tried several different dmgs (also the first provided by @peterl94) which was done in a different way (not use conda-build for building freecad). This build also sometimes crashes after the tests. Also if freecad is installed in a conda env these crashes can be reproduced. So I don't want to waste too much time on these issues. Better to use some time on getting qt5.12 available on conda-forge. I guess there are more people interested in this. (For sure I can test without pip-tools, but I don't see why this should lead to the crashes.)

triplus wrote: Thu Apr 18, 2019 11:39 pm P.S. I investigated the AppImage help issue situation today a bit more and i now understand on how Conda manages (runtime) paths. This is a bit of a problem indeed.
Yes this is the part I always was afraid of. But since the appimage worked quite nice in the 0.18 development cycle I thought doing the same for osx would give similar results.
easyw-fc wrote: Thu Apr 18, 2019 9:34 pm Now the behavior:
1) install KiCADStepUpMod from Tools Addons
2) re-start FC and switch to KiCadStepUp addon
3) under the menu 'ksu Tools', 'Demo' click on the 'd-pack.kicad_mod' item.

This will build a demo inside FC blazing fast using the PPA version.
With the Appimage instead I get a very long delay creating the model (many seconds) and the CPU load goes up to 100%
What I also noticed is that if I move the mouse, the interface get immediately responsive and the building of the model just speeds up.
I can reproduce this in conda-env (old and new toolchain). So this shouldn't be related to the appimage-creation.

So summing up the current main-problems with conda-based freecad-builds, it seems like updating qt is the most important part to get a better experience. I guess there is interest in this coming also from other people working on conda-packages.
So lets see whats happen next: https://github.com/conda-forge/qt-feedstock/issues/101

Btw.: @easyw-fc disabeling the animation should already solve this issue.
chrisb
Veteran
Posts: 54189
Joined: Tue Mar 17, 2015 9:14 am

Re: AppImages of v0.18 release builds

Post by chrisb »

I would second that process. If it is promising that a different Qt version helps with the crashes, then time is invested better in adapting that instead of circumventing issues in the currently used version.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
easyw-fc
Veteran
Posts: 3633
Joined: Thu Jul 09, 2015 9:34 am

Re: AppImages of v0.18 release builds

Post by easyw-fc »

looo wrote: Fri Apr 19, 2019 8:09 am I can reproduce this in conda-env (old and new toolchain). So this shouldn't be related to the appimage-creation.
Nice!

looo wrote: Fri Apr 19, 2019 8:09 am So summing up the current main-problems with conda-based freecad-builds, it seems like updating qt is the most important part to get a better experience. I guess there is interest in this coming also from other people working on conda-packages.
So lets see whats happen next: https://github.com/conda-forge/qt-feedstock/issues/101
Thanks again :D
looo wrote: Fri Apr 19, 2019 8:09 am Btw.: @easyw-fc disabeling the animation should already solve this issue.
With which python commands could I achieve it?
Maurice
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: AppImages of v0.18 release builds

Post by triplus »

looo wrote: Fri Apr 19, 2019 8:09 am For sure I can test without pip-tools, but I don't see why this should lead to the crashes.
QAction gets re-added to Tools menu on each workbench change. Maybe that could contribute to the issue to some extent.

Anyway, what is the situation with Qt on Conda, Qt 5.6.3 isn't available on Conda? If i remember correctly, reading in the past, there should be Qt 5.9 packages? As for Qt 5.12, likely that won't happen for a few more months. Once it happens that will for sure be nice. Things like the need to use newer version of glibc will likely happen too (due to compiling QtWebEngine).
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

triplus wrote: Mon Apr 29, 2019 7:46 pm
looo wrote: Fri Apr 19, 2019 8:09 am For sure I can test without pip-tools, but I don't see why this should lead to the crashes.
QAction gets re-added to Tools menu on each workbench change. Maybe that could contribute to the issue to some extent.

Anyway, what is the situation with Qt on Conda, Qt 5.6.3 isn't available on Conda? If i remember correctly, reading in the past, there should be Qt 5.9 packages? As for Qt 5.12, likely that won't happen for a few more months. Once it happens that will for sure be nice. Things like the need to use newer version of glibc will likely happen too (due to compiling QtWebEngine).
Sorry, I forget about this one. I will try tomorrow.

About qt5.9 it's now available in conda-forge. Next problematic dep is pyside
2. I guess this will need some time until it's available.
User avatar
looo
Veteran
Posts: 3941
Joined: Mon Nov 11, 2013 5:29 pm

Re: AppImages of v0.18 release builds

Post by looo »

After some tests it really seems like pip-tools were causing the crash. (I feel so bad about not testing it earlier...)
still some exceptions are printed, but I couldn't reproduce the crashes when running the tests in gui.

Code: Select all

+ exception thrown
Unhandled unknown exception caught in GUIApplication::notify.
Maybe otheres can tests the currently uploaded dmg's (0.19-pre / 0.18.1). Simple start freecad go to the test-workbench and run all tests.

ping
chrisb wrote:
chrisb
Veteran
Posts: 54189
Joined: Tue Mar 17, 2015 9:14 am

Re: AppImages of v0.18 release builds

Post by chrisb »

With great pleasure - downloading now - will report back.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply