Vectorized Production Path Tracing
dc.contributor.author | Lee, Mark | en_US |
dc.contributor.author | Green, Brian | en_US |
dc.contributor.author | Xie, Feng | en_US |
dc.contributor.author | Tabellion, Eric | en_US |
dc.contributor.editor | Vlastimil Havran and Karthik Vaiyanathan | en_US |
dc.date.accessioned | 2017-12-06T19:47:33Z | |
dc.date.available | 2017-12-06T19:47:33Z | |
dc.date.issued | 2017 | |
dc.description.abstract | This paper presents MoonRay, a high performance production rendering architecture using Monte Carlo path tracing developed at DreamWorks Animation. MoonRay is the first production path tracer, to our knowledge, designed to fully leverage Single Instruction/ Multiple Data (SIMD) vector units throughout. To achieve high SIMD efficiency, we employ Embree for tracing rays and vectorize the remaining compute intensive components of the renderer: the integrator, the shading system and shaders, and the texturing engine. Queuing is used to help keep all vector lanes full and improve data coherency.We use the ISPC programming language [Intel 2011; Pharr and Mark 2012] to achieve improved performance across SSE, AVX/AVX2 and AVX512 instruction sets. Our system includes two functionally equivalent uni-directional CPU path tracing implementations: a C++ scalar depth-first version and an ISPC vectorized breadth-first wavefront version. Using side by side performance comparisons on complex production scenes and assets we show our vectorized architecture, running on AVX2, delivers between a 1.3× to 2.3× speed-up in overall render time, and up to 3×, 6×, and 4×, speed-ups within the integration, shading, and texturing components, respectively. | en_US |
dc.description.sectionheaders | Ray Tracing for Production Assets | |
dc.description.seriesinformation | Eurographics/ ACM SIGGRAPH Symposium on High Performance Graphics | |
dc.identifier.doi | 10.1145/3105762.3105768 | |
dc.identifier.isbn | 978-1-4503-5101-0 | |
dc.identifier.issn | 2079-8679 | |
dc.identifier.uri | https://doi.org/10.1145/3105762.3105768 | |
dc.identifier.uri | https://diglib.eg.org:443/handle/10.1145/3105762-3105768 | |
dc.publisher | ACM | en_US |
dc.subject | Computing methodologies | |
dc.subject | Rendering | |
dc.subject | Ray tracing | |
dc.subject | Computer Graphics | |
dc.subject | Monte Carlo | |
dc.subject | Path Tracing | |
dc.subject | Production Rendering | |
dc.subject | Vectorization | |
dc.title | Vectorized Production Path Tracing | en_US |