OptiX 8.0 has officially been released! This is the first major version revision since OptiX 7 came out four years ago. The new OptiX 8 introduces Shader Execution Reordering (SER) which allows you to reduce execution divergence and data divergence by reordering threads on the fly to be more coherent.
The major changes in OptiX 8 include:
- Shader Execution Reordering
- Debug Exceptions moved to Validation Mode
- Denoiser now accepts (and recommends) normals in world space
- Several bug fixes and tweaks related to the denoiser, ribbon curve primitives, and DMMs
Download Link: NVIDIA OptiX™ Downloads | NVIDIA Developer
OptiX 8 requires a driver numbered 535 or higher. CUDA 12.0 is recommended for developing OptiX 8 applications.
Release Notes: optix_release_notes_8.0_01.pdf
OptiX API documentation: https://raytracing-docs.nvidia.com/
OptiX 8.0 Programming Guide: https://raytracing-docs.nvidia.com/optix8/guide/index.html
Since SER has been available for a few months through NVAPI and as part of the Vulkan and DirectX ray tracing extensions, there is existing information about SER that has already been posted about how it works and what some of the performance benefits might be. You can find a Whitepaper on SER, as well as an Ada Architecture Whitepaper, and there is a blog post about SER use in Games.
For OptiX-specific SER API examples and results, we have updated the optixPathTracer
sample to use the new SER API, and Detlef has provided additional examples in the OptiX Advanced Samples repository along with a forum post detailing some performance results.
Link to previous release: OptiX 7.7 Release
–
David.