This dissertation investigates which parallel algorithms and architectures are the best candidates likely to enable real-time rates for "realistic" renderers that support such features as high-level geometric primitives, tesselation for accurate representation of curved surfaces, and anti-aliasing by oversampling.
Parallel rendering algorithms are distinguished by where in the graphics pipeline they redistribute data in order to "sort" from object-space to image-space: very early in the pipeline (sort-first), after the natural translation in the pipeline to image-space (sort-middle), and after pixels are calculated (sort-last).
The main modeling results give a tradeoff between sort-first, sort-middle, and sort-last. In particular, sort-first "realistic" renderers that support high-level primitives and extensive oversampling are favored by low redistribution costs. However, sort-last "realistic" renderers that support extensive oversampling require very substantial network bandwidth. Modeling shows that sort-middle is intermediate between sort-first and sort-last with respect to costs and benefits.
To determine whether these results apply in practice, I have modified RenderMan, a commercial "realistic" rendering package, to support sort-first and sort-last. It is found that sort-first redistribution costs are indeed very low, but that in contrast to previously published results, redundancy is an impediment to scalability. Load imbalance, however, is the more significant cause of inefficiency for moderately-sized machines. For sort-last, redistribution costs are indeed a problem if real-time rates are to be achieved. In addition, the particular renderer studied is extremely vulnerable to synchronization costs when implemented as sort-last; however, this is a limitation of the underlying uniprocessor rendering algorithm rather than a limitation of sort-last. Thus, sort-first is a good candidate for "realistic" rendering except for load imbalance, sort-last except for redistribution costs.
Combining theoretical and empirical findings, I propose and implement a hybrid algorithm that employs sort-last to balance load in sort-first. This hybrid is found to be effective at reducing load imbalance. Addressing sort-last redistribution costs, I propose and study two techniques to reduce network bandwidth requirements: the inclusion of local z-buffers, and the use of snooping on a shared bus in order to reduce the number of pixels that must be redistributed. These techniques are investigated by modeling and trace-driven simulations; it is shown that the first is effective at reducing network bandwidth requirements, the second is extremely effective.
This dissertation concludes with an identification of further problems that must be solved if "real-time realistic rendering" is to be realized. (Abstract shortened by UMI.)
Cited By
- Bolstad M Parallel methodologies for a micropolygon renderer Proceedings of the 14th Eurographics Symposium on Parallel Graphics and Visualization, (17-24)
- Samanta R, Funkhouser T and Li K Parallel rendering with k-way replication Proceedings of the IEEE 2001 symposium on parallel and large-data visualization and graphics, (75-84)
- Buck I, Humphreys G and Hanrahan P Tracking graphics state for networked rendering Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (87-95)
- Samanta R, Funkhouser T, Li K and Singh J Hybrid sort-first and sort-last parallel rendering with a cluster of PCs Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (97-108)
- Xie F and Shantz M Adaptive hierarchical visibility in a tiled architecture Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (75-84)
- Samanta R, Zheng J, Funkhouser T, Li K and Singh J Load balancing for multi-projector rendering systems Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (107-116)
- Chen M, Stoll G, Igehy H, Proudfoot K and Hanrahan P Simple models of the impact of overlap in bucket rendering Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (105-112)
- Cox M and Bhandari N Architectural implications of hardware-accelerated bucket rendering on the PC Proceedings of the ACM SIGGRAPH/EUROGRAPHICS workshop on Graphics hardware, (25-34)
- Mueller C Hierarchical graphics databases in sort-first Proceedings of the IEEE symposium on Parallel rendering, (49-ff.)
- Lee T, Raghavendra C and Nicholas J (1996). Image Composition Schemes for Sort-Last Polygon Rendering on 2D Mesh Multicomputers, IEEE Transactions on Visualization and Computer Graphics, 2:3, (202-217), Online publication date: 1-Sep-1996.
- Nishimura S and Kunii T VC-1 Proceedings of the 23rd annual conference on Computer graphics and interactive techniques, (365-372)
- Lee T, Raghavendra C and Nicholas J Image composition methods for sort-last polygon rendering on 2-D mesh architectures Proceedings of the IEEE symposium on Parallel rendering, (55-62)
- Wei B, Stoll G, Clark D, Felten E, Li K and Hanrahan P Synchronization for a multi-port frame buffer on a mesh-connected multicomputer Proceedings of the IEEE symposium on Parallel rendering, (81-88)
- Stoll G, Wei B, Clark D, Felten E, Li K and Hanrahan P Evaluating multi-port frame buffer designs for a mesh-connected multicomputer Proceedings of the 22nd annual international symposium on Computer architecture, (96-105)
- Stoll G, Wei B, Clark D, Felten E, Li K and Hanrahan P (1995). Evaluating multi-port frame buffer designs for a mesh-connected multicomputer, ACM SIGARCH Computer Architecture News, 23:2, (96-105), Online publication date: 1-May-1995.
Index Terms
- Algorithms for parallel rendering
Recommendations
Micro-rendering for scalable, parallel final gathering
Recent approaches to global illumination for dynamic scenes achieve interactive frame rates by using coarse approximations to geometry, lighting, or both, which limits scene complexity and rendering quality. High-quality global illumination renderings ...
Hardware-accelerated parallel non-photorealistic volume rendering
NPAR '02: Proceedings of the 2nd international symposium on Non-photorealistic animation and renderingNon-photorealistic rendering can be used to illustrate subtle spatial relationships that might not be visible with more realistic rendering techniques. We present a parallel hardware-accelerated rendering technique, making extensive use of multi-...