The irradiance cache is an acceleration data structure which caches indirect diffuse samples within the framework of a distributed ray-tracing algorithm. Previously calculated values can be stored and reused in future calculations, resulting in an order of magnitude improvement in computational performance. However, the irradiance cache is a shared data structure and so it is notoriously difficult to parallelise over a distributed parallel system. The hurdle to overcome is when and how to share cached samples. This sharing incurs communication overheads and yet must happen frequently to minimise cache misses and thus maximise the performance of the cache. We present a novel component-based parallel algorithm implemented on a cluster of computers, whereby the indirect diffuse calculations are calculated on a subset of nodes in the cluster. This method exploits the inherent spatial coherent nature of the irradiance cache; by reducing the set of nodes amongst which cached values must be shared, the sharing frequency can be kept high, thus decreasing both communication overheads and cache misses. We demonstrate how our new parallel rendering algorithm significantly outperforms traditional methods of distributing the irradiance cache.
|Translated title of the contribution
|Accelerating the Irradiance Cache through Parallel Component-Based Rendering
|EGPGV2006 - 6th Eurographics Symposium on Parallel Graphics Visualization
|Published - 2006
Bibliographical noteISBN: 1727348X
Name and Venue of Conference: EGPGV2006 - 6th Eurographics Symposium on Parallel Graphics Visualization
Other identifier: 2000542