Memory leak?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Memory leak?

nophead
I have a project that seems to consume more and more memory each time I run F5.

The only think a but unusual for me is it does quite a lot of 3D CGAL and takes 1 minute to render. Most of my projects only take seconds.

I am using the last release,

On instance of OpenSCAD is currently using 1.6GB to show this:
image.png

But a freshly opened second instance which shows the whole project including this assembly is only using 445MB.

image.png

I didn't notice a problem until I added the waves to the case, which is done in 2D with a list comprehension that makes a polygon. That does increase the vertex count considerably.



_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Memory leak?

MichaelAtOz
Administrator
How do the console stats compare?



-----
Admin - email* me if you need anything, or if I've done something stupid...

* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”   Fight it! http://www.ourfairdeal.org/   time is running out!
--
Sent from: http://forum.openscad.org/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Admin - email* me if you need anything, or if I've done something stupid...
* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work.
Obviously inclusion of works of previous authors is not included in the above.
Reply | Threaded
Open this post in threaded view
|

Re: Memory leak?

MichaelAtOz
Administrator
In reply to this post by nophead
What happens if you flush cache? Different console stats?
What are preference/advanced/CGAL cache sizes?

Wondering if there is the traditional leak or the cache is mis-handled.



-----
Admin - email* me if you need anything, or if I've done something stupid...

* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”   Fight it! http://www.ourfairdeal.org/   time is running out!
--
Sent from: http://forum.openscad.org/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Admin - email* me if you need anything, or if I've done something stupid...
* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work.
Obviously inclusion of works of previous authors is not included in the above.
Reply | Threaded
Open this post in threaded view
|

Re: Memory leak?

nophead
The small assembly after a few iterations:

Geometries in cache: 938

Geometry cache size in bytes: 21087424

CGAL Polyhedrons in cache: 204

CGAL cache size in bytes: 306307176

Compiling design (CSG Products normalization)...

Normalized CSG tree has 354 elements

Compile and preview finished.

Total rendering time: 0 hours, 1 minutes, 1 seconds



The whole assembly:

Geometry cache size in bytes: 16023312

CGAL Polyhedrons in cache: 72

CGAL cache size in bytes: 49379176

Compiling design (CSG Products normalization)...

Compiling background (1 CSG Trees)...

Normalized CSG tree has 1380 elements

Compile and preview finished.

Total rendering time: 0 hours, 1 minutes, 34 seconds


It looks like as I make changes the cache gets bigger and bigger. Clearing it causes the memory to go down again.


So perhaps not a memory leak, just the cache filling up. I have them both set to 1GB each. It must just be that it took a lot of iterations to get the wavy box right and each iteration must create a lot of geometry that gets cached and abandoned until the cache is cleared. I noticed because Windows said OpenSCAD was using all the memory. Actually Chrome uses most of it because I have about 80 tabs open. Perhaps I should close a few!


It must be something unusual about the waves because I have never noticed the cache filling up memory before, even when working on complex assemblies for weeks.


If anybody is curious it is a small fan oven that I use to dry filament. It keeps a spool at 50C which drops the relative humidity to about 18% in a few days. The effect on printing is amazing compared to ABS left in a room at 60%. Apart from improving the surface quality it completely stops any nozzle ooze at the end of a print and bridging works a lot better. It also reduces the smelly ABS fumes greatly.


The first one I made was for 2.5Kg spools and was mains driven. This is for 1Kg spools and will run from 12V.



On Tue, 15 Oct 2019 at 23:08, MichaelAtOz <[hidden email]> wrote:
What happens if you flush cache? Different console stats?
What are preference/advanced/CGAL cache sizes?

Wondering if there is the traditional leak or the cache is mis-handled.



-----
Admin - email* me if you need anything, or if I've done something stupid...

* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”   Fight it! http://www.ourfairdeal.org/   time is running out!
--
Sent from: http://forum.openscad.org/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Reply | Threaded
Open this post in threaded view
|

Re: Memory leak?

MichaelAtOz
Administrator
Yeh, my browsers also chew memory. In pale moon (forked from Firefox), I use
https://github.com/JustOff/lull-the-tabs/ which unloads tabs to free memory,
reloads them you access them, maybe there is a Chrome equivalent.



-----
Admin - email* me if you need anything, or if I've done something stupid...

* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”   Fight it! http://www.ourfairdeal.org/   time is running out!
--
Sent from: http://forum.openscad.org/

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
Admin - email* me if you need anything, or if I've done something stupid...
* click on my MichaelAtOz label, there is a link to email me.

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work.
Obviously inclusion of works of previous authors is not included in the above.