Ray Tracing is the Future and ever will be
Posted: Mon Jul 29, 2013 11:30 am
all stuff from siggraph is online by now:
Permanent replacement for ompf.org - Now with blog!
Very interesting reading, it is just my impression or NVIDIA has done 180 turn: wasn't Optix kernel written has a single huge kernel before ? Not that I don't agree with the content of the presentation, I have written Path tracing kernels (mostly) in the same way for years.
Second question: doesn't the variable length of work queues they are using imply Dynamic Parallelism (as introduced by Kepler GPUs and recently in OpenCL 2.0) ? I use a fixed amount of work produced as workaround to this problem (i.e. I produce always only a single ray to trace at each step instead of a variable number).
papaboo wrote:I was doing some quick profiling of Optix 3.0 last friday and it does indeed seem to compile into a mega kernel, since all I could find where calls to trace_1. However, I'm currently only compiling for devices of compute capability 1.0 and on such old devices it makes sense to generate a giant kernel, since the performance gains by sorting by ray or material would be completely lost in the overhead of doing the actual sorting, launching kernels and fetching/storing data between kernel launches.
On newer devices, 2.X and upwards, it makes sense to actually break it down into smaller kernels to achieve better thread coherence by sorting based on materials and to keep the register count low. I would assume/hope that NVidia does that when compiling for newer architectures, as that should be perfectly doable with the way they've structured Optix.
friedlinguini wrote:In one presentation at SIGGRAPH (http://on-demand.gputechconf.com/siggra ... -OptiX.pdf), NVIDIA implies that there is an upcoming version that might address this. One slide for enhancements in a future version of Optix cites performance enhancements in "ray tracing kernels [Aila and Laine 2009; Aila et al. 2012]".
friedlinguini wrote:2009 presumably refers to "Understanding the Efficiency of Ray Traversal on GPUs", but 2012 is unclear, since Timo Aila's home page only cites one paper in 2012 ...
friedlinguini wrote:In one presentation at SIGGRAPH (http://on-demand.gputechconf.com/siggra ... -OptiX.pdf), NVIDIA implies that there is an upcoming version that might address this.