A question to developers: Terragen uses very large render bucket sizes, obviously for performance reasons. I tried to reduce bucket size quite drastically but did not observe much change in render times. With cpus growing mostly in core count not clock speed, cutting image into small number of chunks can drastically reduce the amount of processing power used to render the image (imagine 24 core system rendering an image cut to 32 chunks).
Therefore, does bucket size influence anything under the hood? I assume that it can affect render times through increased thread setup time and higher memory pressure.
I guess that some of your questions have been answered here: http://forums.planetside.co.uk/index.php?topic=11728.0
,-) Volker
Hi,
I haven't done a lot of testing with this yet but have found that 128x128 buckets tend to be faster than 256x256. However 64x64 buckets are slower than both.
The bucket size settings are still a bit experimental. I mean they work ok, but what they are best set to is still a little up in the air. I think they were added so people could at least try changing them and then give us feedback on what seemed to be working for them. It's possible the best setting will depend on your scene, as with many other things. For example if I was going to be rendering an animation this would be one of the settings I'd try changing in test runs to see what gave the best performance before I started rendering out lots of frames.
Regards,
Jo
Thanks Jo. Good to know.
The scene definitely plays a big role here. For example, the "benchmark scene" renders nearly twice as fast with 64px buckets than 256px (mostly due to the fact that almost all of grass population is only in one corner and the default bucket chops the scene to nine buckets) while some very population-heavy scenes with fairly uniform distribution of objects show exactly the reverse effect.
Late reply this, but I read this thread a week or so ago and didn't have the time to comment.
This isn't the only rendering system with a bucket approach. I've been using Mental Ray in Softimage for about 9 years now, which uses a similar bucket system. In situations where a complicated scene runs out of memory straight away, thanks to very high res textures or displacement maps and the like, it's a good idea to lower the bucket size so that each bucket is using less RAM and therefore more likely to render properly. Irritatingly the default settings in Mental Ray seem to be getting higher and higher with each revision of Softimage, so having quite so much experience of tinkering renders to be at their speediest is helpful.
It used to be that it was necessary to tweak the BSP settings, Binary Space Partitioning, which divided the scene up into chunks based on their position relative to the camera and then passed those into buckets. Tweaking that was a nightmare. That is automatic now and seems to work well.
So ultimately, render one frame or a crop best representing the detail and complexity of the scene, make a note of the time, tweak the bucket size, note the time again, etc.