S
Still_learning
Sun, May 20, 2018 3:58 PM
My laptop computer is currently crunching numbers for an OpenSCAD STL file
which can be described as including a number of spheres, with an $fn=250
setting.
Running unimpeded since Friday, my resources program tells me that the
openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
resources use from <1% to about 50% on a semi-repeating basis. Yesterday
morning the openscad.exe appeared as 13.xx GB.
Running Windows 7 up to date, and OpenSCAD 2017.01.20.
Machine has 8 GB RAM and 20 GB allocated as additional disk
RAM. High performance (7200 rpm) 1 TB HDD with openscad
in a 160 GB partition.
Windows is set to run without slowdown or stopping and for
"High Performance".
Display window meter for OpenSCAD reads 0/1000.
Is there any way to up the speed at which OpenSCAD crunches
with internal program switches or otherwise?
The more I learn, the more I get curious about.
Sent from: http://forum.openscad.org/
My laptop computer is currently crunching numbers for an OpenSCAD STL file
which can be described as including a number of spheres, with an $fn=250
setting.
Running unimpeded since Friday, my resources program tells me that the
openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
resources use from <1% to about 50% on a semi-repeating basis. Yesterday
morning the openscad.exe appeared as 13.xx GB.
Running Windows 7 up to date, and OpenSCAD 2017.01.20.
Machine has 8 GB RAM and 20 GB allocated as additional disk
RAM. High performance (7200 rpm) 1 TB HDD with openscad
in a 160 GB partition.
Windows is set to run without slowdown or stopping and for
"High Performance".
Display window meter for OpenSCAD reads 0/1000.
Is there any way to up the speed at which OpenSCAD crunches
with internal program switches or otherwise?
-----
The more I learn, the more I get curious about.
--
Sent from: http://forum.openscad.org/
TP
Torsten Paul
Sun, May 20, 2018 4:09 PM
On 05/20/2018 05:58 PM, Still_learning wrote:
My laptop computer is currently crunching numbers for
an OpenSCAD STL file which can be described as including
a number of spheres, with an $fn=250 setting.
Uff, why $fn=250? With that a single sphere has 61738 faces?
ciao,
Torsten.
On 05/20/2018 05:58 PM, Still_learning wrote:
> My laptop computer is currently crunching numbers for
> an OpenSCAD STL file which can be described as including
> a number of spheres, with an $fn=250 setting.
>
Uff, why $fn=250? With that a single sphere has 61738 faces?
ciao,
Torsten.
MP
Mark Peeters
Sun, May 20, 2018 4:26 PM
This is a great question, I would like to know what component would have
the best effect on helping openscad render.
Which order do these help the most in? System Ram vs CPU speed vs Video
card ram.
I have noticed that system ram seems to help my render process times the
most.
On Sun, May 20, 2018 at 11:58 AM, Still_learning sprocketsjohn@gmail.com
wrote:
My laptop computer is currently crunching numbers for an OpenSCAD STL file
which can be described as including a number of spheres, with an $fn=250
setting.
Running unimpeded since Friday, my resources program tells me that the
openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
resources use from <1% to about 50% on a semi-repeating basis. Yesterday
morning the openscad.exe appeared as 13.xx GB.
Running Windows 7 up to date, and OpenSCAD 2017.01.20.
Machine has 8 GB RAM and 20 GB allocated as additional disk
RAM. High performance (7200 rpm) 1 TB HDD with openscad
in a 160 GB partition.
Windows is set to run without slowdown or stopping and for
"High Performance".
Display window meter for OpenSCAD reads 0/1000.
Is there any way to up the speed at which OpenSCAD crunches
with internal program switches or otherwise?
The more I learn, the more I get curious about.
Sent from: http://forum.openscad.org/
OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
This is a great question, I would like to know what component would have
the best effect on helping openscad render.
Which order do these help the most in? System Ram vs CPU speed vs Video
card ram.
I have noticed that system ram seems to help my render process times the
most.
On Sun, May 20, 2018 at 11:58 AM, Still_learning <sprocketsjohn@gmail.com>
wrote:
> My laptop computer is currently crunching numbers for an OpenSCAD STL file
> which can be described as including a number of spheres, with an $fn=250
> setting.
>
> Running unimpeded since Friday, my resources program tells me that the
> openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
> resources use from <1% to about 50% on a semi-repeating basis. Yesterday
> morning the openscad.exe appeared as 13.xx GB.
>
> Running Windows 7 up to date, and OpenSCAD 2017.01.20.
> Machine has 8 GB RAM and 20 GB allocated as additional disk
> RAM. High performance (7200 rpm) 1 TB HDD with openscad
> in a 160 GB partition.
>
> Windows is set to run without slowdown or stopping and for
> "High Performance".
>
> Display window meter for OpenSCAD reads 0/1000.
>
> Is there any way to up the speed at which OpenSCAD crunches
> with internal program switches or otherwise?
>
>
>
>
>
> -----
> The more I learn, the more I get curious about.
> --
> Sent from: http://forum.openscad.org/
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
TP
Torsten Paul
Sun, May 20, 2018 4:31 PM
On 05/20/2018 06:26 PM, Mark Peeters wrote:
This is a great question, I would like to know what component
would have the best effect on helping openscad render. Which
order do these help the most in? System Ram vs CPU speed vs
Video card ram.
From earlier discussions, it seems the most effective thing is
to maximize the combination of single thread CPU speed + RAM
access speed.
GPU may help a tiny bit for interactive preview performance,
but it has no impact on the final render (F6).
ciao,
Torsten.
On 05/20/2018 06:26 PM, Mark Peeters wrote:
> This is a great question, I would like to know what component
> would have the best effect on helping openscad render. Which
> order do these help the most in? System Ram vs CPU speed vs
> Video card ram.
>
From earlier discussions, it seems the most effective thing is
to maximize the combination of single thread CPU speed + RAM
access speed.
GPU may help a tiny bit for interactive preview performance,
but it has no impact on the final render (F6).
ciao,
Torsten.
S
Still_learning
Sun, May 20, 2018 4:52 PM
High $fn= setting is due to required smoothness of surfaces.
Do I take it from your reply that Openscad has no internal option for
increasing its resource use?
Or should I take away that it does not matter when a high $fn= number is
used?
The more I learn, the more I get curious about.
Sent from: http://forum.openscad.org/
High $fn= setting is due to required smoothness of surfaces.
Do I take it from your reply that Openscad has no internal option for
increasing its resource use?
Or should I take away that it does not matter when a high $fn= number is
used?
-----
The more I learn, the more I get curious about.
--
Sent from: http://forum.openscad.org/
MF
Michael Frey
Sun, May 20, 2018 5:48 PM
On 20.05.2018 17:58, Still_learning wrote:
Running unimpeded since Friday, my resources program tells me that the
openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
resources use from <1% to about 50% on a semi-repeating basis. Yesterday
morning the openscad.exe appeared as 13.xx GB.
When you talk about CPU usage: Please also provide the number of
physical cores and hyper-treading.
50% sounds like a dual core machine, where only one core is being used.
Note that OpenSCAD only really uses one core.
1% CPU usages combined with the RAM size and usage means that the RAM is
bottlenecking the system.
On 20.05.2018 17:58, Still_learning wrote:
Is there any way to up the speed at which OpenSCAD crunches
with internal program switches or otherwise?
I do not know what you model and how you model it, so it is hard to
guess what helps.
For my use case, it helps to break up the model into "sub sections" that
I each render into to STL files and then I merge those STL files. This
way, I only have to re-render the changed section and the assembly.
Even when re-rendering the whole model from scratch, this approach can
lower the RAM usage (less temporary data hold in memory) and/or help
rendering multiple parts at the same time (increasing CPU usage).
An other approach could be to run OpenSCAD in command line mode may also
help.
You might also may want to try experimental windows builds.
Maybe some of the changes in the last few years might make the rendering
process faster (or slower) for you.
But given the time it takes to render for you, trial and error does not
seam to be the best approach.
With kind regards,
Michael Frey
On 20.05.2018 17:58, Still_learning wrote:
> Running unimpeded since Friday, my resources program tells me that the
> openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
> resources use from <1% to about 50% on a semi-repeating basis. Yesterday
> morning the openscad.exe appeared as 13.xx GB.
When you talk about CPU usage: Please also provide the number of
physical cores and hyper-treading.
50% sounds like a dual core machine, where only one core is being used.
Note that OpenSCAD only really uses one core.
1% CPU usages combined with the RAM size and usage means that the RAM is
bottlenecking the system.
On 20.05.2018 17:58, Still_learning wrote:
> Is there any way to up the speed at which OpenSCAD crunches
> with internal program switches or otherwise?
I do not know what you model and how you model it, so it is hard to
guess what helps.
For my use case, it helps to break up the model into "sub sections" that
I each render into to STL files and then I merge those STL files. This
way, I only have to re-render the changed section and the assembly.
Even when re-rendering the whole model from scratch, this approach can
lower the RAM usage (less temporary data hold in memory) and/or help
rendering multiple parts at the same time (increasing CPU usage).
An other approach could be to run OpenSCAD in command line mode may also
help.
You might also may want to try experimental windows builds.
Maybe some of the changes in the last few years might make the rendering
process faster (or slower) for you.
But given the time it takes to render for you, trial and error does not
seam to be the best approach.
With kind regards,
Michael Frey
MF
Michael Frey
Sun, May 20, 2018 6:07 PM
On 20.05.2018 18:52, Still_learning wrote:
Do I take it from your reply that Openscad has no internal option for
increasing its resource use?
You do not have an excess of resources, so allowing OpenSCAD to use more
of the resources would not help rendering time, even if there would be
an option.
First of all: OpenSCAD has no multithreading support.
So, there is no simple option to use more of your CPU.
Given your description (8 GB of real RAM, but OpenSCAD needing 23GB to
render you file) you are also bottle necked by your RAM-size.
Allowing OpenSCAD to use even more resources would not help.
(so even if we had multithreading support: It would not help, when data
has to be moved backed and forward between Harddrive and RAM. Keep in
mind: More threads generally means more memory usages)
My strategy would be to review the Code you are using.
If that is not an option, the next thing would be a RAM upgrade to about
32GB (yes I know it is expensive - but the CPU having to wait for data
from a mechanical hard drive is a real bottleneck), followed by a CPU
with higher single thread performance (which might knock down a few
percents - CPUs have not gotten that much faster in the last few years).
Realistically, optimizing your code has the most potential - but
offcourse also the hardest.
Maybe it would help to have a SSD for the Swap/Page File, but I doubt
that this would significantly speed up the process - so I would not
bother with that option.
With kind regards,
Michael Frey
On 20.05.2018 18:52, Still_learning wrote:
> Do I take it from your reply that Openscad has no internal option for
> increasing its resource use?
You do not have an excess of resources, so allowing OpenSCAD to use more
of the resources would not help rendering time, even if there would be
an option.
First of all: OpenSCAD has no multithreading support.
So, there is no simple option to use more of your CPU.
Given your description (8 GB of real RAM, but OpenSCAD needing 23GB to
render you file) you are also bottle necked by your RAM-size.
Allowing OpenSCAD to use even more resources would not help.
(so even if we had multithreading support: It would not help, when data
has to be moved backed and forward between Harddrive and RAM. Keep in
mind: More threads generally means more memory usages)
My strategy would be to review the Code you are using.
If that is not an option, the next thing would be a RAM upgrade to about
32GB (yes I know it is expensive - but the CPU having to wait for data
from a mechanical hard drive is a real bottleneck), followed by a CPU
with higher single thread performance (which might knock down a few
percents - CPUs have not gotten that much faster in the last few years).
Realistically, optimizing your code has the most potential - but
offcourse also the hardest.
Maybe it would help to have a SSD for the Swap/Page File, but I doubt
that this would significantly speed up the process - so I would not
bother with that option.
With kind regards,
Michael Frey
S
Still_learning
Sun, May 20, 2018 6:53 PM
On 20.05.2018 17:58, Still_learning wrote:
Running unimpeded since Friday, my resources program tells me that the
openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
resources use from <1% to about 50% on a semi-repeating basis. Yesterday
morning the openscad.exe appeared as 13.xx GB.
When you talk about CPU usage: Please also provide the number of
physical cores and hyper-treading.
AMD dual core processors. Process monitor indicates 10 open threads being
used by program to varying degrees and with various quantities of CPU
cycles being devoted to each. The number of threads stays constant, while
the cycle usages rises and falls among them.
50% sounds like a dual core machine, where only one core is being used.
I have seen the process monitor register as high as 57% of CPU, though
the typical high is in the 53% region.
Note that OpenSCAD only really uses one core.
Is that something OpenSCAD has control over in its system calls?
1% CPU usages combined with the RAM size and usage means that
the RAM is bottlenecking the system.
This is possible, but now that I am looking a little more closely at
process, it strikes me that the program is perhaps calculating the faces
of each sphere sequentially and adding the result to a cached assembly
area, then, as it rises up the side, the sphere need for more computing
power arises.
Response from the system is noticeably impacted for using other programs,
in that they take more time to load and are initially slower to use, but
then
response rises to normal rates.
But given the time it takes to render for you, trial and error does not
seam to be the best approach.
Your split model building approach might work in this instance, but I think
not. But I will try it after the first STL is finished generating.
As you say, T & E is not all that applicable in this case.
The more I learn, the more I get curious about.
Sent from: http://forum.openscad.org/
MichaelPFrey wrote:
>>On 20.05.2018 17:58, Still_learning wrote:
>> Running unimpeded since Friday, my resources program tells me that the
>> openscad.exe has ballooned to 22.73 GB, and the program varies its CPU
>> resources use from <1% to about 50% on a semi-repeating basis. Yesterday
>> morning the openscad.exe appeared as 13.xx GB.
> When you talk about CPU usage: Please also provide the number of
> physical cores and hyper-treading.
AMD dual core processors. Process monitor indicates 10 open threads being
used by program to varying degrees and with various quantities of CPU
cycles being devoted to each. The number of threads stays constant, while
the cycle usages rises and falls among them.
> 50% sounds like a dual core machine, where only one core is being used.
I have seen the process monitor register as high as 57% of CPU, though
the typical high is in the 53% region.
> Note that OpenSCAD only really uses one core.
Is that something OpenSCAD has control over in its system calls?
> 1% CPU usages combined with the RAM size and usage means that
> the RAM is bottlenecking the system.
This is possible, but now that I am looking a little more closely at
process, it strikes me that the program is perhaps calculating the faces
of each sphere sequentially and adding the result to a cached assembly
area, then, as it rises up the side, the sphere need for more computing
power arises.
Response from the system is noticeably impacted for using other programs,
in that they take more time to load and are initially slower to use, but
then
response rises to normal rates.
> But given the time it takes to render for you, trial and error does not
> seam to be the best approach.
Your split model building approach might work in this instance, but I think
not. But I will try it after the first STL is finished generating.
As you say, T & E is not all that applicable in this case.
-----
The more I learn, the more I get curious about.
--
Sent from: http://forum.openscad.org/
S
Still_learning
Sun, May 20, 2018 7:10 PM
As an additional note, one of the threads opened in the process indicates
that this is a time critical process, so aside from critical system
functions, OpenSCAD.exe has first call on system resources.
Also, the swap/page RAM capacity is 20 gb, plus system RAM of 8 gb is still
well short of the
22+ gb size of the openscad.exe incidence.
I agree that a machine with faster processors and 64 GB of RAM would
probably speed things up.
I am not complaining about OpenSCAD, only trying to understand its quirks.
If OpenSCAD would be best served on a stand alone dedicated server, I can
live with that and building a suitable machine is not a big deal, only $$$.
Then I can build and preview the files in my laptop and render them on the
big machine.
Thanks for the input.
The more I learn, the more I get curious about.
Sent from: http://forum.openscad.org/
As an additional note, one of the threads opened in the process indicates
that this is a time critical process, so aside from critical system
functions, OpenSCAD.exe has first call on system resources.
Also, the swap/page RAM capacity is 20 gb, plus system RAM of 8 gb is still
well short of the
22+ gb size of the openscad.exe incidence.
I agree that a machine with faster processors and 64 GB of RAM would
probably speed things up.
I am not complaining about OpenSCAD, only trying to understand its quirks.
If OpenSCAD would be best served on a stand alone dedicated server, I can
live with that and building a suitable machine is not a big deal, only $$$.
Then I can build and preview the files in my laptop and render them on the
big machine.
Thanks for the input.
-----
The more I learn, the more I get curious about.
--
Sent from: http://forum.openscad.org/
A
alan@lxorguk.ukuu.org.uk
Sun, May 20, 2018 7:32 PM
As an additional note, one of the threads opened in the process indicates
that this is a time critical process, so aside from critical system
functions, OpenSCAD.exe has first call on system resources.
Also, the swap/page RAM capacity is 20 gb, plus system RAM of 8 gb is still
well short of the
22+ gb size of the openscad.exe incidence.
I agree that a machine with faster processors and 64 GB of RAM would
probably speed things up.
I am not complaining about OpenSCAD, only trying to understand its quirks.
If OpenSCAD would be best served on a stand alone dedicated server, I can
live with that and building a suitable machine is not a big deal, only $$$.
Shouldn't cost you much. OpenSCAD is single threaded so there is no point
buying an expensive system to run it. If you need multithreading you need
to move to one of the altenatives that does multi-thread although they
tend to be less nice to use in other ways.
You'll get the same general performance from a dirt cheap i3 as an
equivalent top end processor with the same turbo frequency and TDP. You
can even turn off hyperthreading on it.
Alan
On Sun, 20 May 2018 12:10:50 -0700 (MST)
Still_learning <sprocketsjohn@gmail.com> wrote:
> As an additional note, one of the threads opened in the process indicates
> that this is a time critical process, so aside from critical system
> functions, OpenSCAD.exe has first call on system resources.
>
> Also, the swap/page RAM capacity is 20 gb, plus system RAM of 8 gb is still
> well short of the
> 22+ gb size of the openscad.exe incidence.
>
> I agree that a machine with faster processors and 64 GB of RAM would
> probably speed things up.
>
> I am not complaining about OpenSCAD, only trying to understand its quirks.
>
> If OpenSCAD would be best served on a stand alone dedicated server, I can
> live with that and building a suitable machine is not a big deal, only $$$.
Shouldn't cost you much. OpenSCAD is single threaded so there is no point
buying an expensive system to run it. If you need multithreading you need
to move to one of the altenatives that does multi-thread although they
tend to be less nice to use in other ways.
You'll get the same general performance from a dirt cheap i3 as an
equivalent top end processor with the same turbo frequency and TDP. You
can even turn off hyperthreading on it.
Alan