APPLYING PARALLEL PROCESSING APPROACH
FOR INTERACTIVE GLOBAL ILLUMINATION
By
Mahmoud Moustafa ZidanBasic Sciences Department
Faculty of Computer and Information SciencesAin Shams University
Under Supervision of
Prof. Dr. Taymoor Nazmy
Computer Science DepartmentFaculty of Computer and Information Sciences
Ain Shams University
Prof. Dr. Mohamed HashemInformation Systems Department
Faculty of Computer and Information SciencesAin Shams University
Dr. Haytham El-Messiry
Computer Science DepartmentFaculty of Computer and Information Sciences
Ain Shams University
AGENDA Introduction to RT, GI, GPU Previous Work (GI, Hierarchy
Construction) Proposed Approach for Hierarchal Tree
Construction Proposed Algorithm for Building Binned
SAH BVH Proposed Approach for Parallel Ray
Tracing and Photon Mapping Results Conclusion
RAY TRACING , GLOBAL ILLUMINATION
GPU ARCHITECTURE, GPGPU, CUDA
PREVIOUS WORK -RENDERING- Offline VS Interactive (Real-time)
RenderingRasterizationPhysically Based Rendering Reyes RenderingPrecomputed Radiance Transfer
Parallel Hieratical Tree Construction KD-Tree [Zhou et al. 2008]SAH BVH, LBVH [Lauterbach et al. 2009]
Interactive (Real-time) GPU RT , GPU PMReal-time RT [Zhou et al. 2008] Interactive PM [Wang et al. 2009]
PROPOSED APPROACH FOR HIERARCHAL TREE CONSTRUCTION Data parallel utilities
Data Parallel Primitive Algorithms (main building blocks for parallel algorithms)
Data parallel operator Data parallel code fragment
Parallel extensions to math/logic operators on GPU
A simple reformulation of previous parallel algorithms
on GPU
PROPOSED ALGORITHM FOR BUILDING BINNED SAH BVH Pervious work
GPU SAH BVH [Lauterbach et al. 2009] (high quality tree, slow construction)
GPU LBVH [Lauterbach et al. 2009] (moderate (low) quality tree, fast construction)
HLBVH
PROPOSED APPROACH -BINNED SAH BVH- Evaluates SAH as (small) (variable)
number of candidates (e.g. 32-4) is enough for good tree [instead of (large) (fixed) candidates in SAH BVH]
Divide triangles into fixed size chunks for better work load
Evaluates SAH at chunks and used parallel scans to share intermediate values of SAH (work efficiency)
Also use LBVH to build higher tree levels for faster algorithms
PROPOSED APPROACH FOR RT, PM Entire mapping of all rendering stages
on GPU A simple reformulation of previous
approaches for both ray tracing and photon mapping
Evaluate proposed hierarchy for binned SAH BVH
PARALLEL GI ON GPU
RESULTS Ray tracing evaluation
RESULTS Witted ray tracing
RESULTS Photon mapping
DEMO
CONCLUSION New approach for GPU parallel code
which simplifies previous proposed algorithms
Proposed fast algorithm for building BVH
FUTURE WORK New parallel template library (e.g.
thrust) Use the LBVH appraoch for fast point-
based KD-tree Enhance ray tracer for distributed
effects Enhance photon mapping for area light
ACKNOWLEDGEMENT
QUESTIONS