Cutting patterns on curved surface crashes grasshopper

Hi!
I’m trying to create a script that can randomly distribute several different patterns on a very large moderately curved surface. I started with a basic pattern just to test the script, and it works fine when doing a few instances.
But when I try to run the script with 80 random instances the program crashes. Eventually I want to be able to fill in the whole surface with 6-7 different patterns randomly distributed.
Is there a cleaner way to do this with less computing power?
Attached are the grasshopper file with the list Item disabled and the Rhino file with the large curved surface I’ve been working on.

Thanks!

facade pattern distribution experiment.gh (27.0 KB)

facade experiment.3dm (45.0 KB)

Are you trying to cut the holes in the large surface? Or cut holes in each of the SubSrf results?

Take your pick: (but yeah, cutting holes is slow)

facade pattern_2022Jan21a.gh (14.5 KB) (holes in the large surface)
facade pattern_2022Jan21b.gh (16.8 KB) (holes in each SubSrf)

Thank you!
I was trying to cut holes in the large surface. Looks like it was a matter of data management, with your alterations it’s a bit slow but works perfectly.
Thanks again!