Going large: advice/resources for optimising

Hi all,
Another (marginally less) newbie question.

I have created a gh program that results in the boolean intersections between one brep and many others, potentially several thousand. The first brep is scaled using a knob, but as soon as the value starts to change, recalculation starts and the control becomes unresponsive. Can I decouple the control sufficiently to allow it to reach a steady state at my new value before recalculation kicks in down the line?


can you put it through a loop (anemone or other) that does one at a time?

Data Dam


1 Like

Definitively Data Dam, as @Joseph_Oster said.
Try also the “Never” option, so you’ll always have to manually “pass” the data.

Thank guys, @Joseph_Oster especially. I can now tweak the setting. Sadly that just demonstrates that the tool is too slow (almost all due to the amount of brep slicing and boolean intersectioning going on) so I need to try a different paradigm. Fortunately I have a Plan B, and a Plan C…


Hi @jeremy5,

There is one thing you need to take note when using data dams. Even if they are set to Never they are calculated when you open (re-open) a gh definition. This leads to a long wait (depending on the definition).

Along with data dams I use a python script with a Togglethat my wire goes through before entering the data dam. This script sets the output of my ghpython, respectively the input of the datadam to Null.

I turn this off when saving the gh file.

I use this wherever I have a bottle-neck in my definition. Gradually turning them on.


Good observation about data dams passing data when you first open a GH file (fail!), but you don’t need Python since Stream Gate does the same thing (and more):

data_dam_2019Jul20a.gh (7.4 KB)


Yes would be nice if this behavior was changed @DavidRutten

1 Like