Real Time Global Illumination Solutions to the Radiosity Algorithm using Hybrid CPU/GPU Nodes
Loading...
Links to Files
Permanent Link
Author/Creator ORCID
Date
2014
Type of Work
Department
Program
Citation of Original Publication
Rights
This item is likely protected under Title 17 of the U.S. Copyright Law. Unless on a Creative Commons license, for uses protected by Copyright Law, contact the copyright holder or the author.
Abstract
We investigate high performance solutions to the global illumination problem in computer graphics. An existing CPU serial implementation using the radiosity method is given as the performance baseline where a scene and corresponding form-factor coefficients are provided. The initial computational radiosity solver uses the classical Jacobi method as an iterative approach to solving the radiosity linear system. We add the option of using the modern BiCG-STAB method with the aim of reduced runtime through a reduction in iteration count with respect to Jacobi for complex problems. It is found that for the test scenes used, the convergence complexity was not great enough to take advantage of mathematical reformulation through BiCG-STAB. Single-node parallelization techniques are implemented through OpenMP-based threading, GPU- overloading, and hybrid threading/GPU overloading and it is seen that in general OpenMP is optimal by requiring no expense. Finally, we investigate the non-standard-array storage style of the system to determine whether storage through arrays of structures or structures of arrays results in better performance. We find that the usage of arrays of structures in conjunction with OpenMP results in the best performance except for small scene sizes where CUDA shows the minimal runtime.