I made a post about this in the Rhino plugins / Elefront section, but it’s a cul-de-sac, so here we go.
The smart way to reference blocks in GH would be to list the geometry/sub-block content of each block definition, and list the transforms and attributes of each block instance.
That way you don’t need to bloat Grasshopper with all the duplicate geometry information.
On large models with many blocks, things get out of hand quite fast.
A 123 MB model resulted in a 10 GB memory usage due to my definition using Elefront’s “Reference block by name” and “Deconstruct block” components.
I’d like to hear how you guys manage this issue.