Performance: Subtractive helix & Polar Pattern

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

:lol:
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
imm
Posts: 251
Joined: Wed Nov 03, 2021 1:00 pm

Re: Performance: Subtractive helix & Polar Pattern

Post by imm »

This is an ADDITIVE HELIX polar pattern, but it also suffers from poor performance on Windows machines.
CPU demand rarely goes other 30% usage on re-calc.

As a side note Realthunder's branch seems to be able to outperform the main-branch regularly driving the
CPU to 100%. No I don't have firm stats.....just observed behaviour.

And sorry, but file is too large to upload.
19tooth-LH20deg-InvoluteSpline-gear-additive-helix-on-base.PNG
19tooth-LH20deg-InvoluteSpline-gear-additive-helix-on-base.PNG (50.55 KiB) Viewed 1208 times
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

imm wrote: Sun Mar 05, 2023 8:18 pm And sorry, but file is too large to upload.
Setting the number of occurrences to 2 should yield a small enough file. Testers can easily change it back.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
imm
Posts: 251
Joined: Wed Nov 03, 2021 1:00 pm

Re: Performance: Subtractive helix & Polar Pattern

Post by imm »

chrisb wrote: Sun Mar 05, 2023 9:41 pm
imm wrote: Sun Mar 05, 2023 8:18 pm And sorry, but file is too large to upload.
Setting the number of occurrences to 2 should yield a small enough file. Testers can easily change it back.
Adjusted as suggested above the file still is 1,758 KB ....limit per attachment still exceeded.
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

imm wrote: Mon Mar 06, 2023 10:25 am limit per attachment still exceeded.
Then remains the possibility to upload it to a publicly available file server.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
imm
Posts: 251
Joined: Wed Nov 03, 2021 1:00 pm

Re: Performance: Subtractive helix & Polar Pattern

Post by imm »

chrisb wrote: Mon Mar 06, 2023 10:53 am
imm wrote: Mon Mar 06, 2023 10:25 am limit per attachment still exceeded.
Then remains the possibility to upload it to a publicly available file server.
OK File can be downloaded from https://github.com/webmite/FreeCAD-Samples
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

imm wrote: Wed Mar 08, 2023 9:09 am File can be downloaded
I am pleasantly surprised that FreeCAD seems to use more than one kernel in 0.21. It goes here up to more than 1100%. Time to recompute for the whole model with 19 occurrences is 78 seconds.

Remark: Changing to 19 occurrences yields the same as your image shows. A full recompute lets the ends at the top go to the inside though.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

I have reworked the file to use only a single pipe and no PartDesign helix. I attached the arc at the end directly, whih means that the direction may have to be corrected. This avoids the flipping and is much faster:

For 19 occurrences - I have now a time to recompute of 36.5 seconds.

Code: Select all

OS: macOS 10.16
Word size of FreeCAD: 64-bit
Version: 0.21.0.31917 (Git)
Build type: Release
Branch: master
Hash: 4639283b459f9ff9093e289908cc003db8745b82
Python 3.10.9, Qt 5.15.6, Coin 4.0.0, Vtk 9.1.0, OCC 7.6.3
Locale: C/Default (C)
Installed mods: 
  * FC_SU
  * DynamicData 2.46.0
  * freecad.gears 1.0.0
  * FeedsAndSpeeds 0.5.0
  * dxf-library
  * fcgear 1.0.0
  * fasteners 0.4.54
  * sheetmetal 0.2.61
  * ExplodedAssembly
  * Curves 0.6.8
The size for the full 19 occurrences version is now 1.4MB, I upload it here with 2.
Attachments
a19tooth-LH20deg-Involute-Spline_cb.FCStd
(826.44 KiB) Downloaded 32 times
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
imm
Posts: 251
Joined: Wed Nov 03, 2021 1:00 pm

Re: Performance: Subtractive helix & Polar Pattern

Post by imm »

The original was created with 0.20.2 (latest 'stable' version available on windows).

It would not render the polar array correctly without including both the helix and the sweep individually.
This was a work-around.

Good to hear of the speed improvement. I will look forward to it.

Code: Select all

OS: Windows 10 Version 2009
Word size of FreeCAD: 64-bit
Version: 0.20.2.29603 (Git)
Build type: Release
Branch: (HEAD detached at 0.20.2)
Hash: 930dd9a76203a3260b1e6256c70c1c3cad8c5cb8
Python 3.10.8, Qt 5.15.4, Coin 4.0.0, Vtk 9.1.0, OCC 7.6.3
Locale: English/United States (en_US)
Installed mods: 
  * AnimationFreeCAD 1.0.0
  * Curves 0.6.5
  * Nodes 0.1.36
  * PieMenu
  * sheetmetal
Last edited by imm on Wed Mar 08, 2023 10:43 am, edited 1 time in total.
chrisb
Veteran
Posts: 53933
Joined: Tue Mar 17, 2015 9:14 am

Re: Performance: Subtractive helix & Polar Pattern

Post by chrisb »

imm wrote: Wed Mar 08, 2023 10:29 am It would not render the polar array correctly without including both the helix and the sweep individually.
My file works in 0.20 too. It takes 148 sec to recompute. maximum CPU usage is 100%, i.e.0.20 uses only one kernel.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
Post Reply