Grasshopper

algorithmic modeling for Rhino

Hello,

I am looking to investing into a computer for modeling with grasshopper and more specifically, Kangaroo. I was wondering if anyone had any resources or spec sheets that they could share with me. Also in a more general sense, are there elements of Kangaroo that should be considered past just gearing a computer around Grasshopper? 

Any help would be great, Thanks!

Augie

Views: 1197

Replies to This Discussion

Hi,

My understanding is that Rhino and Grasshopper are pretty much single threaded. I know that some people have been working on multi-threading for Grasshopper, I am not sure how far they have got with this. If the above is correct then I guess the best machine would be a fast processor, not too many cores, and a good chunk of working memory? 

J

 

Hi Augie,

Interesting question.

Last year I got a new home desktop, with Kangaroo/Grasshopper performance in mind. I'm no expert in PC building, but I did a bit of reading first, and have been pleased with this machine.

As Jason says, Rhino and Grasshopper are mainly single-threaded, so I prioritized single core speed and got an i7 4790k, which comfortably overclocks to 4.7GHz (with a decent air cooler, but no fancy liquid cooling).

The Kangaroo2 solver is actually multi-threaded now, but the difference this makes is not great as you might imagine. Using 4 cores is certainly nowhere near 4 times faster, because although parts of the calculation are easily parallelized, everything still needs to be recombined at each iteration, and this is usually the bottleneck. I think there is still room for some improvement in how it is multi-threaded, but I wouldn't hold your breath for any massive changes on this front soon.

I'd be interested to know how the performance scales with the Xeon chips (more cores, significantly more expensive, but relatively low clock speeds). At the time I made the guess that they weren't worth it, but it would be good to really test this out.

RAM is relatively cheap these days, so I went with 32GB of it at 2133MHz. It does seem that the speed of the RAM matters, as enabling XMP in the BIOS (to make it run above the default 1333) seemed to make a noticeable difference.

Graphics-wise my personal feeling is that the gaming oriented GTX cards offer better value than the much more expensive 'professional' Quadro range - and have read that the hardware between the 2 has historically been very similar or even identical despite the Quadros being several times the price, with the difference being mainly in the drivers. There are some threads on discourse.mcneel.com about this, and it seems that recent GTX cards like the 970 do very well in Holomark (the Rhino performance benchmarking tool).

I got a GTX 770 (this was just before the 900 series came out), which is probably way overkill just for Rhino/Grasshopper, as they don't use the GPU for more than display (Though some of the render plugins do, and I think for those more CUDA cores is what matters, so there GTX is probably still better value.) 

Probably swapping this for a much cheaper card wouldn't make much difference to Rhino/GH performance anyway (though if you want to use the PC for other stuff like gaming or virtual reality it does).

I don't have much experience with AMD cards, so can't comment on how they compare to Nvidia. 

Eventually I do hope to make Kangaroo run the physics on the GPU, and potentially this does have a big speed impact. Nvidia recently released some impressive demos of their FLEX engine, which really fly with a decent graphics card. That is very much game-physics, and not suitable for most of the things Kangaroo is used for, but theoretically Kangaroo could also be adapted to use CUDA (or OpenCL), though it involves a lot of big changes, and I don't have a timeline for this yet.

In the much shorter term there are some things in the pipeline that should speed up Kangaroo for certain things like collisions between large numbers of objects, just by using some different algorithms.

Altogether my machine was still well under 2K, and I've been really happy with it. That said, the difference in performance between this and my 4 year old 700 i5 laptop is actually not that huge in day-to-day Grasshopper usage. It does seem that there is a strong case of diminishing returns with buying a PC - I'd hazard a guess that even spending 3 times this amount (as another thread on this forum was discussing recently) you'd be hard pushed to get anything that made a really significant difference to the experience of using it, and if you really want to spend more money, you would be better off just upgrading more frequently (and getting a nice monitor(s)).

Anyway, a long ramble, I hope some of it is useful. As I said, I'm no hardware expert, and would be interested to hear different opinions.

I also think it will be nice to make a simple benchmarking tool for Kangaroo and have people run it on their various machines and report back results (as with Holomark), to help others make informed decisions on these things. I'll try and put something together for this soon.

Any development now, if you plan to work online, now requires the addition of various cybersecurity systems. Otherwise, you run the risk that all of your data and the data of those who will be using the product will be exposed to the public and quite possibly to fraudsters. It's important not to forget the basic aspects of digital privacy and security. There are different offerings and solutions out there now, but at least Beeble is worth learning more about https://beeble.com/. If you've been looking for reliable cloud storage, this could be a great option, which by the way is available for free.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service