This Article 
 Bibliographic References 
 Add to: 
Analysis of a Parallel Volume Rendering System Based on the Shear-Warp Factorization
September 1996 (vol. 2 no. 3)
pp. 218-231

Abstract—This paper presents a parallel volume rendering algorithm that can render a 256 × 256 × 225 voxel medical data set at over 15 Hz and a 512 × 512 × 334 voxel data set at over 7 Hz on a 32-processor Silicon Graphics Challenge. The algorithm achieves these results by minimizing each of the three components of execution time: computation time, synchronization time, and data communication time. Computation time is low because the parallel algorithm is based on the recently-reported shear-warp serial volume rendering algorithm which is over five times faster than previous serial algorithms. The algorithm uses run-length encoding to exploit coherence and an efficient volume traversal to reduce overhead. Synchronization time is minimized by using dynamic load balancing and a task partition that minimizes synchronization events. Data communication costs are low because the algorithm is implemented for shared-memory multiprocessors, a class of machines with hardware support for low-latency fine-grain communication and hardware caching to hide latency.

We draw two conclusions from our implementation. First, we find that on shared-memory architectures data redistribution and communication costs do not dominate rendering time. Second, we find that cache locality requirements impose a limit on parallelism in volume rendering algorithms. Specifically, our results indicate that shared-memory machines with hundreds of processors would be useful only for rendering very large data sets.

[1] G.D. Abram and T. Whitted, "Building Block Shaders," Computer Graphics, (SIGGRAPH '90 Proc.), vol. 24, pp. 283-288,Dallas, Aug. 1990.
[2] M. Agrawala, "Parallelizing the Shear Warp Volume Rendering Algorithm," CS390 Project Report, Stanford Univ., Sept. 1993.
[3] M.B. Amin, A. Grama, and V. Singh, "Fast Volume Rendering Using an Efficient, Scalable Parallel Formulation of the Shear-Warp Algorithm," Proc. 1995 Parallel Rendering Symp., pp. 7-14,Atlanta, Oct. 1995.
[4] J. Boyle, R. Butler, T. Disz, B. Glickfeld, E. Lusk, R. Overbeek, J. Patterson, and R. Stevens, Portable Programs for Parallel Processors. Holt, Rinehart and Winston, 1987.
[5] B. Cabral, N. Cam, and J. Foran, “Accelerated Volume Rendering and Tomographic Reconstruction Using Texture Mapping Hardware,” Proc. 1994 Symp. Volume Visualization, pp. 91-98, 1994.
[6] G.G. Cameron and P.E. Undrill, "Rendering Volumetric Medical Image Data on a SIMD-Architecture Computer," Proc. Third Eurographics Workshop on Rendering, pp. 135-145,Bristol, UK, May 1992.
[7] J. Challinger, "Parallel Volume Rendering on a Shared Memory Multiprocessor," Technical Report UCSC-CRL-91-23, Univ. of Calif. at Santa Cruz, Mar. 1992.
[8] R.L. Cook, “Shade Trees,” Proc. ACM SIGGRAPH, pp. 223-231, 1984.
[9] B. Corrie and P. Mackerras, "Parallel Volume Rendering and Data Coherence," Proc. 1993 Parallel Rendering Symp., pp. 23-26,San Jose, Oct. 1993.
[10] T. Delmarcelle and L. Hesselink, "A Unified Framework for Flow Visualization," Computer Visualization: Graphics Techniques for Scientific and Engineering Analysis, R.S. Gallagher, ed., pp. 129-170, CRC Press, Boca Raton, 1995.
[11] R.A. Drebin, L. Carpenter, and P. Hanrahan, “Volume Rendering,” Computer Graphics (SIGGRAPH '88 Proc.), no. 22, pp. 65-74, 1988.
[12] R.B. Haber and D.A. McNabb, "Visualization Idioms: A Conceptual Model for Scientific Visualization Systems" Visualization in Scientific Computing, ," G.M. Nielson, B. Shriver, and L.J. Rosenblum, eds., pp. 74-93, IEEE C S Press, Los Alamitos, CA., 1990.
[13] J.L. Hennessy and D.A. Patterson, Computer Architecture: A Quantitative Approach, Morgan Kaufmann, San Mateo, Calif., 1990.
[14] W.M. Hsu,“Segmented ray casting for data parallel volume rendering,” 1993 Parallel Rendering Symp., pp. 7-14, Oct. 1993.
[15] G. Knittel and W. Straßer, "A Compact Volume Rendering Accelerator," 1994 Symp. Volume Visualization, pp. 67-74,Washington, D.C., Oct. 1994.
[16] P. Lacroute, “Fast Volume Rendering Using a Shear-Warp Factorization of the Viewing Transform,” PhD thesis, Stanford Univ., Stanford, Calif., 1995.
[17] P. Lacroute, "Real-Time Volume Rendering on Shared Memory Multiprocessors Using the Shear-Warp Factorization," Proc. Parallel Rendering Symp., ACM, New York, 1995, pp. 15-22.
[18] P. Lacroute and M. Levoy, "Fast Volume Rendering Using a Shear-Warp Factorization of the Viewing Transformation," Proc. Siggraph 94, ACM Press, New York, pp. 451-458.
[19] D. Laur and P. Hanrahan, Hierarchical Splatting: A Progressive Refinement Algorithm for Volume Rendering Proc. ACM SIGGRAPH, pp. 285-288, 1991.
[20] D. Lenoski et al., “The DASH prototype: Logic overhead and performance,” IEEE Trans. on Parallel and Distributed Systems, vol. 4, no. 1, 1993, pp. 41-61.
[21] M. Levoy, “Efficient Ray Tracing of Volume Data,” ACM Trans. Graphics, vol. 9, no. 3, pp. 245-261, July 1990.
[22] K.-L. Ma, J. Painter, C. Hansen, and M. Krogh, “A Data Distributed, Parallel Algorithm for Ray-Traced Volume Rendering,” Proc. 1993 Parallel Rendering Symp., 1993.
[23] M. Martonosi, A. Gupta, and T. Anderson, "MemSpy: Analyzing Memory System Bottlenecks in Programs," Proc. 1992 SIGMETRICS Conf. Measurement and Modeling of Computer Systems, pp. 1-12,Newport, R.I., June1-5 1992.
[24] C. Montani, R. Perego, and R. Scopigno, "Parallel Volume Visualization on a Hypercube Architecture," Proc. 1992 Workshop Volume Visualization, pp. 9-16,Boston, Oct. 1992.
[25] C. Montani and R. Scopigno, "Rendering Volumetric Data Using the STICKS Representation Scheme," Proc. 1990 Workshop Volume Visualization, pp. 87-93,San Diego, Nov. 1990.
[26] U. Neumann, "Parallel Volume-Rendering Algorithm Performance on Mesh-Connected Multicomputers," Proc. 1993 Parallel Rendering Symp., ACM Press, New York, pp. 97-104.
[27] J. Nieh and M. Levoy, "Volume Rendering on Scalable Shared-Memory MIMD Architectures," Proc. ACM Siggraph Workshop on Volume Visualization, ACM, 1992, pp. 17-24.
[28] H. Pfister, A. Kaufman, and T. Chiueh, "Cube-3: A Real-Time Architecture for High-Resolution Volume Visualization," 1994 ACM/IEEE Symp. Volume Visualization, ACM Press, New York, and IEEE CS Press, Los Alamitos, Calif., 1994, pp. 75-82.
[29] T. Porter and T. Duff,“Compositing digital images,” Computer Graphics (SIGGRAPH’84 Proc.), H. Christiansen, ed., vol. 18, pp. 253-259, July 1984.
[30] R.A. Reynolds,D. Gordon,, and L.S. Chen,“A dynamic screen technique for shaded graphic display of slice-represented objects,” Computer Vision, Graphics, and Image Processing, vol. 38, no. 3, pp. 275-298, June 1987.
[31] P. Schröder and G. Stoll, “Data Parallel Volume Rendering as Line Drawing,” Proc. 1992 Workshop Volume Visualization, pp. 25-31, Boston, 19-20 Oct. 1992.
[32] J.P. Singh, A. Gupta, and M. Levoy, "Parallel Visualization Algorithms: Performance and Architectural Implications," Computer, Vol. 27, No. 7, July 1994, pp. 45-55.
[33] M.D. Smith, "Tracing with Pixie," Technical Report CSL-TR-91-497, Stanford Univ., 1991.
[34] G. Vézina, P.A. Fletcher, and P.K. Robertson, "Volume Rendering on the MasPar MP-1," Proc. 1992 Workshop on Volume Visualization, Oct. 1992, pp. 3-8.
[35] C.M. Wittenbrink and A.K. Somani,“Permutation warping for data parallel volume rendering,” IEEE Parallel Rendering Symp. Proc., pp. 57-60,San Jose, Calif., Oct. 1993.
[36] T.S. Yoo, U. Neuman, H. Fuchs, S.M. Pizer, T. Cullip, J. Rhoades, and R. Whitaker, "Direct Visualization of Volume Data," IEEE Comput. Graphics Applic., vol. 12, no. 4, pp. 63-71, July 1992.

Index Terms:
Volume rendering, parallel algorithms for shared memory multiprocessors, shear-warp factorization, coherence optimizations, image partition, multiprocessor performance analysis.
Philippe Lacroute, "Analysis of a Parallel Volume Rendering System Based on the Shear-Warp Factorization," IEEE Transactions on Visualization and Computer Graphics, vol. 2, no. 3, pp. 218-231, Sept. 1996, doi:10.1109/2945.537305
Usage of this product signifies your acceptance of the Terms of Use.