Ray Packet Tracing with Acceleration using AVX
- Author(s): Wu, Franklin
- Advisor(s): Jensen, Henrik W
- et al.
The most time consuming operation of ray tracing is the intersection of rays. Since many rays are traced, the use of single instruction multiple data, or SIMD, instructions (such as the 4-wide SSE) to trace multiple rays simultaneously have been used. However, the incoherence of secondary rays, especially reflection and refraction rays, results in low utilization of the SIMD instructions’ full width. In this thesis we look at using the AVX instruction set which expands upon SSE to allow twice as many rays, but exacerbates the problem of low utilization. We present a method of packaging secondary rays to improve ray coherence within the packet to improve SIMD utilization. While the improvement is only incremental we believe the work is important as we see a trend of wider SIMD instructions such as AVX-512.