What type of Geometry would reduce RAM Usage

Hello all,

I am having trouble with a big model I need to run calculations for. Even before I start running the calculations, I seem to run into RAM issues(I have 64gb). Rhino crashes when connecting geometry to HB Face or Shade.

Right now I have a big outter shell as a trimmed surface and the “problem geometry” ceiling lamellas as surface and open polysurfaces.

So my questions is, should I mesh everything in Rhino, before connecting it to nodes in Grasshopper? What type of geometry input will require less calculation and transformation inside Grasshopper so I can reduce the load of my PC?

Thank you,

Hristo

1 Like

It depends on the type of study but if You’re not looking for energy simulation then try using meshes for everything.

1 Like

Thank you @mostapha ! I am doing daylight studies.

I read in an old thread somewhere on this forum about the possibility of turning of “Undo” for Grasshopper/Components, is that something that would help my pc deal with the RAM issues?

Also, when I try to compress my model to a Rad folder, I get the message that it has ran out of memory, is that better for RAM than Dump Compressed Objects .pkl option for compression?

Hi Hristo,

it is quite difficult to answer the question generally because this heavly depends on how you set up your model in grashopper. Maybe you can share the skript?

Hello Ben,

I will try to run HB Dump Compressed Objects and send the .pkl file. I can also send the model and grasshopper definition via PM, but the file is a bit over 1gb.

In the mean time I tried running an Imageless Glare Calculation without 3 of the bigger sets of geometry and got it running, but I got an error stating it failed to create an octree. Here is the log file I get.
logs.rar (116.9 KB)

I am looking to run Imageless Glare, UDI and PIT calculations. Could Pollination help me achieve that if my PC isn’t able to handle them in LBT(if the problem is my PC that is)

Currently looking for all the help I can get. Thank you all

So when I try to write my model to a Rad folder I get this error:

Runtime error (OutOfMemoryException): Exception of type ‘System.OutOfMemoryException’ was thrown.

Traceback:
line 690, in _write_static_files, “C:\Program Files\ladybug_tools\python\Lib\site-packages\honeybee_radiance\writer.py”
line 299, in model_to_rad_folder, “C:\Program Files\ladybug_tools\python\Lib\site-packages\honeybee_radiance\writer.py”
line 75, in script

Is this because of the size of the model(seems strange as I have been running similar calculations on models twice the size) or lack of RAM( I have 64GB).

One thing that I noticed is that the traceback spits out lines in a python subfolder, so I started wondering if different versions of Python can cause the problem. I checked the version of Python on my PC and it says 3.10.8, while using the HB Check Versions in GH states 3.7.9

Hi Hristo,

I’ve faced that issue several times, and the culprit is almost always the same: a curved surface. Ladybug attempts to convert the curved surface by creating thousands of planar surfaces. So if you are talking about a really large model, which already takes a few GB, having a couple of curves inside the model is enough to kill the conversion.

Unfortunately, converting everything into mesh doesn’t solve the issue. I have never found any solution other than removing/redrawing the curved elements using a simpler NURBS. The way to spot them was to create small groups of geometry, connect them to a HB Face. If the script would take forever, then I’d know that I have a curved surface inside that group…

Good luck!

1 Like

Hi @pmcmm , thank you very much for your input, I will start testing it out asap

Hello,

so after remodeling the geometry so that it now consists of planar surfaces I get a new type of error, which seems like kind of good news, at least I am going somewhere.

When I try to run it through the Model to rad Folder now I get this:

  1. Solution exception:Array dimensions exceeded supported range.

Would anyone have any suggestions as to how to make this calculation run?

Hey @Hristo ,

This issue still seems somewhat related to running out of memory. In this case, it seems that you’re exceeding the maximum number of items you can put in a list.

Could you try writing the model folder in 2 or 3 chunks that you merge together? Also, make sure that you’re using the minimal_ option on the Model To Rad Folder component.

Hi Chris, I have found that when I transfer my working folder to D drive which has 150 gb of free space(it used to write it to C, with 20gb of free space) I am able to run the Model to Rad folder with minimal option selected. It takes some time to compute everything but so far I have been able to add most of my geometry. It took some simplifying, but at leas it is working so far. I have some more geometry to add and test, and will let you know of my progress.

Can you explain the method of writing the folder in 2 or 3 chunks and merging? I don’t seem to understand the process.

Thank you,

Hristo

@chris so at some point adding geometry to the Rad Folder seems to stop working, and I end up with another error message, doesn’t matter if its reduced and planar, so I guess my next hope will be to figure out how to divide and merge the model folder

Hey @Hristo ,

You really just might be at the limit of what your machine can handle but by “writing the folder in 2 or 3 chunks” I just meant writing half of a third of your honeybee objects in one model folder, writing the other(s) to another, and then writing a script to append the content of the files in one model folder to the other.

Granted, there’s no guarantee that this will work 100% and you may just be better off trying to remove unimportant small geometries from your analysis.

Stepping way out of my comfort zone here… So using a GH Pythonscript component, or fiddling with the Model to Rad folder code?

On another note, what specs would be required to run enormous models, or is simplifying your models the way to go?

Hi Hristo,

Seems that you managed to import the geometry, that’s good news.
Hard to tell you what is the problem without seeing the geometry you’re using. Can you share a small part of the model, a piece that is giving you trouble?