Skip to content

Implement Intel Embree CPU Fallback and Zero-Copy Hybrid Mode for APUs#65

Open
Tsokko wants to merge 1 commit into
GPUOpen-LibrariesAndSDKs:mainfrom
Tsokko:feature/apu-hybrid-fallback
Open

Implement Intel Embree CPU Fallback and Zero-Copy Hybrid Mode for APUs#65
Tsokko wants to merge 1 commit into
GPUOpen-LibrariesAndSDKs:mainfrom
Tsokko:feature/apu-hybrid-fallback

Conversation

@Tsokko

@Tsokko Tsokko commented Jun 26, 2026

Copy link
Copy Markdown

This PR introduces a hardware-agnostic C++ architecture to HIPRT, adding software ray tracing fallback via Intel Embree and a Zero-Copy Hybrid Mode for AMD APUs.

Added:

Phase 1: ContextBase, refactor monolithic Context → GpuContext, context routing in hiprtCreateContext
Phase 2: CpuContext (Embree), hiprt_cpu.h with SIMD AVX vectorization for rtcIntersect8, CPU-side BVH building
Phase 3: HybridContext — Zero-Copy memory sharing between CPU/GPU using oroMallocManaged & HSA_XNACK=1
Phase 4: hiprt_hybrid.h / Dual Dispatch load balancing (gpuFraction) to saturate both processors asynchronously
Tests: 38 passing Unit Tests on AMD APU hardware without RT cores.

To run tests:

.\dist\bin\Release\unittest64.exe --gtest_filter="hiprtTest*:Obj*"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant