The Global ARCHICAD Community

Stay informed. Get help. Share your knowledge.

Topics related to the Grasshopper-ARCHICAD Connection and the various tasks that can be achieved with it.

Moderators: LaszloNagy, ejrolon, Barry Kelly, Karl Ottenstein, gkmethy

I'm trying to scale up some AC Conncection based workflows. I have noticed that when I reference lots of elements, for example, 300 zones GH files became very heavy. Something around 50 MB. I totally wouldn't mind but it turned out that its influence GH canvas refresh rate very much. So even simple operation like connecting one node even when solver is blocked take a while to process. This makes even minor changes almost impossible. One way I found is to reference fewer objects... but referencing takes a while as well.

I assume that AC Connection loads full data scope at once and also BREPS stuff in meanwhile for preview in one go. Is there any way to reduce this lag by reducing amounts of data read or turning off less useful stuff - like previews?
That's true. Usually, it's not good to work with big files. I some cases blocking helps.. but not in this one :D
I with my question I meant how to prevent so radical increase of file size with AC - GH Connection. I assume that not all data is needed at the same moment. I thought that maybe parameters increases file size dramatically, but no. I assume that it is more related to a preview of elements but I'm not sure. I have tested Doors with different setup - with additional elements or plain and simple there is no difference in GH file size. Even changing object to more complex windows doesn't influence file size.

I got to the point that Composite component causes a crash. So I cant pick materials and generate geometry.
definitely, the plugin is handling events even when grasshopper solver is blocked.

apparently, it handles components selection events, and checks if selected components has referenced geometry.

I passed a bunch of referenced wall objects to a generic data component. then, if I select this "generic data" component, in archicad side, the referenced wall that the "generic data" components contains are also selected. This should mean that grasshopper plugin is watching all the time (well at least all the time that connection is active) what is contained in any grasshopper component.

I think that it could be nice to be able to stop the event handling when grasshopper solver is blocked, even if connection plugin is running on Archicad side.

of course, all this is based on my observations, and just guessing. It would be nice to listen the opinion of developers. The fact is that the plugin performance is quite poor, maybe because this event handling behaviour (of course, in case that my interpretation are right)

I experimented recently severe performance issues because of a plugin (bullant) being event handling every time a geometry was created in Rhino. Even when i was not using the plugin.
Hello kzaremba,

Can you send me the gh file (and maybe a pln as well if necessary) so that I can reproduce this? I want to see what causes it, and what can be done about this in the future.

If you can, please also send me the specs of your machine (use dxDiag), and some videos about the slowness and the crash (with the composites).

I have prepared a file with an isolated problem. Around 200 zones and 200 doors.

When you I'm trying to add new components already refresh rate is quite poor. However, profiler doesn't indicate so big lags. This also happened when the solver is blocked. So as far as I understand components shouldn't work. GH file is 14 megs.

Thanks for help.
Zip with PLN and GH file
(4.83 MiB) Downloaded 11 times

We investigated what causes this and found the source of the slow-down.

What causes this exact slow-down is that the default way we generate the preview geometry for the elements stored in our Grasshopper components, is that they are generated even when they are hidden in the Rhino preview (because that geometry is used for other processes as well).

We are looking into whether we can find a way in the future to generate this geometry less frequently - thus speeding it up. It is on our to-do list as #252919.

In the meantime we are about to release a new update for the Connection tool that will be compatible with AC22 4023. It should include several speed improvements that should make the whole experience a bit more smooth.