“HIPRT: A Ray Tracing Framework in HIP” by Daniel Meister, Paritosh Kulkarni, Aaryaman Vasishta, and Takahiro Harada (AMD, 2024):


1. Motivation & Background

Ray tracing has become increasingly feasible on GPUs thanks to modern hardware with large memory and dedicated acceleration units. While NVIDIA (OptiX) and Intel (Embree) provide professional-grade GPU ray tracing frameworks, AMD lacked an equivalent open-source framework tailored for professional rendering pipelines.

HIPRT is introduced as a cross-platform, GPU-based ray tracing framework in HIP (Heterogeneous-Compute Interface for Portability) designed specifically for AMD GPUs, but usable in broader environments. Unlike Vulkan/DirectX ray tracing APIs, HIPRT:


2. Core Contributions

  1. Full-featured GPU ray tracing framework for AMD hardware, with support for:

    • Multi-level instancing
    • Motion blur with non-uniform time intervals
    • Custom primitives & intersection filters
  2. Novel massively-parallel SBVH (spatial split BVH) construction algorithm adapted to GPUs.
  3. Flexible and minimal API design, avoiding complexities of shader binding tables.
  4. Open-source release with ports of PBRT-v4 demonstrating integration.
  5. Technical innovations:

    • Component-wise motion blur representation (avoiding matrix singularities found in OptiX).
    • Generic traversal stack supporting multiple strategies (private, global, dynamic).
    • Support for importing custom BVHs (enabling research comparisons).

3. HIPRT API


4. BVH Construction

HIPRT provides three GPU-based BVH builders:

Key techniques:


5. Ray Traversal


6. Technical Implementation


7. Evaluation


8. Conclusion & Impact

HIPRT provides:

The framework balances simplicity (API design), performance (optimized BVH build/traversal), and flexibility (custom primitives, motion blur, instancing), making it a strong candidate for both academic research and production rendering pipelines.