OpenCL GPGPU Spatial Partitioning Raytracing

From BRL-CAD
Revision as of 12:17, 22 October 2017 by Vasco.costa (talk | contribs) (Created page with "Contact "brlcad" on irc.freenode.net BRL-CAD has one of the oldest and fastest parallel ray tracing implementations around but we don't currently leverage the GPU. With impl...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Contact "brlcad" on irc.freenode.net

BRL-CAD has one of the oldest and fastest parallel ray tracing implementations around but we don't currently leverage the GPU. With implicit geometry and constructive solid geometry (CSG) Boolean operations, we also have a very different approach to ray tracing that has its own set of academic challenges.

Your project is to help us introduce a GPGPU pipeline into BRL-CAD using OpenCL. You're welcome to use a library that encapsulates OpenCL.

Currently we use a Bounding Volume Hierarchy (BVH), an object partitioning scheme, to reduce the amount of intersections that we need to compute. The advantage of the BVH is that it does not compute duplicate intersections, which is typically an issue with spatial partitioning schemes, but an issue it has is that it requires computing all the primitive intersections along the ray path

Difficulty: Hard

Languages: C and OpenCL (or other GPGPU API)