Grasshopper

algorithmic modeling for Rhino

Grasshopper 2.0 and multithreading compared to Houdini or others

Mostly it's directed to David, but if anyone else knows something as well feel free to spread the word. So compared to Houdini and the way it always advertises its multi-threading high performance procedural system, hope you heard about it at any point, would you like to make Grasshopper 2.0 something relatively similar? Is this level of performance a one-off or with changing the code that you mentioned some time ago Grasshopper can be as efficient as Houdini for example?

Views: 1305

Replies to This Discussion

I don't own nor have I ever used Houdini. I've no idea what exactly it is they do in their kernel.

Thank you for the reply, it's really nice to see how you commited to keeping up with this forum.

So I asked about Houdini because it seems to be based on similar concept as Grasshopper, GC or Mash for Maya, but it also seems to be much faster. I think it is partially because it is based on C# or C++ and it's scripting language for users is also based on one of them.

Technically the exact same code will run somewhat faster in C++ than C#, but the difference is easily eclipsed by writing better code in my experience. That said, C++ does allow for some optimizations that are not possible in C#, by directly manipulating memory.

Just because two programs use a node-editor UI though doesn't mean they work in similar ways behind the scenes. If Houdini is heavily optimized for moving meshes and particles around, then it will probably be a lot faster at it than Rhino. Rhino was never designed to be an animation package, and as a result it does not have great performance for modifying existing geometry. Rhino (and Grasshopper) make a lot of copies of objects, because they both do not like to modify the original shape. Copying stuff takes time.

Furthermore if the Houdini api is designed to be typesafe, that will also allow them to heavily optimize the transmission of data between nodes.

But in the end these packages do not do the same things and they probably don't work in similar ways. I'm mostly concerned with comparing GH2 to GH1 in terms of performance, because the comparison is actually meaningful there.

I never heard of Houdini before either, but I did take a look at some of their tutorial videos. Apparently Houdini is a node-based animation tool used for video special effects and video game design.  It does not seem to have any ability to define or create real objects in the real world. 

Being node-based it does have some similarities to Grasshopper, in that you construct objects by placing nodes on the screen and connecting them with wires. I thought this video (https://vimeo.com/204582189) showed some nice features for dealing with wires that would be nice to have in Grasshopper, but I reckon David has his hands full with GH2 already.

Ah you see, Houdini graphs are organised top-to-bottom instead of left-to-right. That's much faster because gravity does half the work for you.

Ah yes - gravity! I should have thought of that.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service