Re: [Bf-committers] Default for Raytracer Instancing
When I read the post about instancing being off by default, I was in the middle of a big project with raytracing and lots of instancing. I can turn on instancing to save some rendering time, right? Wrong! Turning on instancing gave me longer render times, and it also made a small but visible difference in final gather. This is just the first file I tried rendering with instancing turned on, and I have not tried with other projects yet. Definitely not a large enough sampling to draw broad conclusions, but maybe turning it on by default is not such a simple answer after all. -Randall On 21 January 2011 10:39, Daniel Salazar - 3Developer.com zan...@gmail.comwrote: There's an option in the Performance panel in Render Properties called Instances, it allows the raytracer to memory instance all duplis, IMO this option should be on by default (if optional at all) since, from talking to Jaguarandy some time ago, it should not bring any problems or speed increase in any case, to the contrary, the speed and memory usage when using duplis gets much better. Also sadly many people ignore this setting so they don't benefit from it. cheers Daniel Salazar ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
I have noticed this too, turning on instancing, in scenes with lots of instances, sometime leads to longer render times. In the past it has been faster, too, so I don't know what's going on, or why it should have these results. On Sun, 2011-01-30 at 10:00 -0800, Randall Rickert wrote: When I read the post about instancing being off by default, I was in the middle of a big project with raytracing and lots of instancing. I can turn on instancing to save some rendering time, right? Wrong! Turning on instancing gave me longer render times, and it also made a small but visible difference in final gather. This is just the first file I tried rendering with instancing turned on, and I have not tried with other projects yet. Definitely not a large enough sampling to draw broad conclusions, but maybe turning it on by default is not such a simple answer after all. -Randall On 21 January 2011 10:39, Daniel Salazar - 3Developer.com zan...@gmail.comwrote: There's an option in the Performance panel in Render Properties called Instances, it allows the raytracer to memory instance all duplis, IMO this option should be on by default (if optional at all) since, from talking to Jaguarandy some time ago, it should not bring any problems or speed increase in any case, to the contrary, the speed and memory usage when using duplis gets much better. Also sadly many people ignore this setting so they don't benefit from it. cheers Daniel Salazar ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers -- PGP public key http://freefac.org/misc/public.key ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
On Mon, Jan 31, 2011 at 7:45 AM, Bassam Kurdali bkurd...@freefactory.org wrote: I have noticed this too, turning on instancing, in scenes with lots of instances, sometime leads to longer render times. In the past it has been faster, too, so I don't know what's going on, or why it should have these results. It's plausible that enabling it can lead to longer render times, since it has to do more work (extra transformations) when intersecting rays. Though I imagine it could vary from scene to scene - scenes without any actual instances would be slower, but perhaps some scenes with instances could be faster too (if it's always intersecting the same object, it may be better for the cache?). The main reason for using instances is to lower memory usage anyway - some scenes you just can't render without it. I'd be in favour of enabling it by default, but perhaps it could be a bit smarter - i.e. if instancing is turned on, but no instances are actually found during the render's geometry pre-processing, then it could just disable instancing internally for that render. Not sure if the code's organised in a way that would make that easy, but it makes sense to me. cheers Matt ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
Matt instancing speeds up in orders of magnitude when a scene uses instances Daniel Salazar www.3developer.com 2011/1/30 Matt Ebb m...@mke3.net: On Mon, Jan 31, 2011 at 7:45 AM, Bassam Kurdali bkurd...@freefactory.org wrote: I have noticed this too, turning on instancing, in scenes with lots of instances, sometime leads to longer render times. In the past it has been faster, too, so I don't know what's going on, or why it should have these results. It's plausible that enabling it can lead to longer render times, since it has to do more work (extra transformations) when intersecting rays. Though I imagine it could vary from scene to scene - scenes without any actual instances would be slower, but perhaps some scenes with instances could be faster too (if it's always intersecting the same object, it may be better for the cache?). The main reason for using instances is to lower memory usage anyway - some scenes you just can't render without it. I'd be in favour of enabling it by default, but perhaps it could be a bit smarter - i.e. if instancing is turned on, but no instances are actually found during the render's geometry pre-processing, then it could just disable instancing internally for that render. Not sure if the code's organised in a way that would make that easy, but it makes sense to me. cheers Matt ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
Hi, When you enable instancing, it will only do it for objects that have more than one instance. So for that there should be no performance regression. It can degrade performance due to the overhead of the ray transforms, and because of lower BVH tree quality. Also when instancing meshes with only a few faces you might actually use more memory. Performance may be improved by using less memory which can avoided cache misses, and of course swapping if it doesn't fit in memory. I think it should be enabled by default, other parts of Blender don't use that much memory for instances, and it's unexpected that raytracing would suddenly use much more. I still have raytracing optimizations to port over from the render branch, will look at getting those into trunk, since they shouldn't change any results. Brecht. On Sun, Jan 30, 2011 at 10:51 PM, Daniel Salazar - 3Developer.com zan...@gmail.com wrote: Matt instancing speeds up in orders of magnitude when a scene uses instances Daniel Salazar www.3developer.com 2011/1/30 Matt Ebb m...@mke3.net: On Mon, Jan 31, 2011 at 7:45 AM, Bassam Kurdali bkurd...@freefactory.org wrote: I have noticed this too, turning on instancing, in scenes with lots of instances, sometime leads to longer render times. In the past it has been faster, too, so I don't know what's going on, or why it should have these results. It's plausible that enabling it can lead to longer render times, since it has to do more work (extra transformations) when intersecting rays. Though I imagine it could vary from scene to scene - scenes without any actual instances would be slower, but perhaps some scenes with instances could be faster too (if it's always intersecting the same object, it may be better for the cache?). The main reason for using instances is to lower memory usage anyway - some scenes you just can't render without it. I'd be in favour of enabling it by default, but perhaps it could be a bit smarter - i.e. if instancing is turned on, but no instances are actually found during the render's geometry pre-processing, then it could just disable instancing internally for that render. Not sure if the code's organised in a way that would make that easy, but it makes sense to me. cheers Matt ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
Hi Brecht, that would be awesome and will speedup things a bit :) Thomas Am 30.01.2011 23:19, schrieb Brecht Van Lommel: I still have raytracing optimizations to port over from the render branch, will look at getting those into trunk, since they shouldn't change any results. Brecht. ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
It has benefitted me - once told it needed turning on! +1 for on by default please :) Cheers, Doug. On 21 January 2011 10:39, Daniel Salazar - 3Developer.com zan...@gmail.comwrote: There's an option in the Performance panel in Render Properties called Instances, it allows the raytracer to memory instance all duplis, IMO this option should be on by default (if optional at all) since, from talking to Jaguarandy some time ago, it should not bring any problems or speed increase in any case, to the contrary, the speed and memory usage when using duplis gets much better. Also sadly many people ignore this setting so they don't benefit from it. cheers Daniel Salazar ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
Since there has been no reply by the decision makers, consider this a formal bump. There is confusion over instancing in blender and people *are wasting hours* on this. I propose to get rid of this option in the interface and make it on for every file, old or new. Quoting a piece of IRC conversation here :) dougal2 holy crap... much faster now, cheers :) ZanQdo Im still waiting for a reply in bf-commiters on my proposal of making that feature on by default.. ZanQdo nobody seems to care dougal2 I care - I would have assumes it would instance by default ! dougal2 1 hr+ wasted :( similar goes on all the time cheers Daniel Salazar ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers
Re: [Bf-committers] Default for Raytracer Instancing
Even to avoid bug reports! Right now i am working on a heavy scene with raytracing, it sucks about 500 Mbytes with instancing on, and with instancing off it simply CRASH because it doesn't have the enough memory to build the tree! You can see it in the task manager, even in a 64bits with 8 gigabytes! So not only takes much less memory and faster render times, it also avoid out of memory crashes! Cheers. 2011/1/28 Daniel Salazar - 3Developer.com zan...@gmail.com Since there has been no reply by the decision makers, consider this a formal bump. There is confusion over instancing in blender and people *are wasting hours* on this. I propose to get rid of this option in the interface and make it on for every file, old or new. Quoting a piece of IRC conversation here :) dougal2 holy crap... much faster now, cheers :) ZanQdo Im still waiting for a reply in bf-commiters on my proposal of making that feature on by default.. ZanQdo nobody seems to care dougal2 I care - I would have assumes it would instance by default ! dougal2 1 hr+ wasted :( similar goes on all the time cheers Daniel Salazar ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers ___ Bf-committers mailing list Bf-committers@blender.org http://lists.blender.org/mailman/listinfo/bf-committers