Re: [Bf-committers] Default for Raytracer Instancing

2011-01-30 Thread Randall Rickert
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

2011-01-30 Thread Bassam Kurdali
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

2011-01-30 Thread Matt Ebb
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

2011-01-30 Thread Daniel Salazar - 3Developer.com
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

2011-01-30 Thread Brecht Van Lommel
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

2011-01-30 Thread Thomas Dinges
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

2011-01-28 Thread Doug Hammond
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

2011-01-28 Thread Daniel Salazar - 3Developer.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


Re: [Bf-committers] Default for Raytracer Instancing

2011-01-28 Thread Agustin Benavidez
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