Skip to main content
Log in

Multi-threaded parallel projection tetrahedral algorithm for unstructured volume rendering

  • Regular Paper
  • Published:
Journal of Visualization Aims and scope Submit manuscript

Abstract

Volume rendering methods have been extensively studied in recent years due to their effectiveness and expressiveness for unstructured grid data visualization. Although existing volume rendering methods have demonstrated great success, we observe that these methods have extensive interpolation and integral operations, which may adversely affect their efficiency and further prevent them being applied in interactive visualization. To boost efficiency and achieve interactive rendering rates, we propose a novel multi-threaded parallel projection tetrahedral algorithm based on multi-core architecture. By analyzing the parallelism of volume rendering methods, we find that the visibility sorting and classification/decomposition of projection polygons are the most time-consuming parts. To reduce the execution time of these two parts, we design corresponding parallel methods. In this manner, our method can dramatically improve efficiency and further enable user interactions for progressive unstructured grid analysis. The visibility sorting part includes partial sorting and global sorting: In partial sorting, we partition disordered tetrahedral depth array and obtain several loosely coupled subarrays, and in global sorting, we sort each subarray with multi-threads technique. In the classification/decomposition of projection polygons part, we normalize tetrahedral projection to ensure arbitrary tetrahedral produces the same number of triangles, and then store the produced vertex data into vertex array with offset computation that ensures correct order for the multi-threads runtime. The experimental results show that the proposed multi-threaded projection tetrahedral algorithm can achieve a speedup of 3.4X on a 20 cores CPU and outperforms the fastest VTK implementation at a speedup of 2.5X, which verifies the efficiency of our algorithm.

Graphic Abstract

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  • Antonio F (1992) Faster line segment intersection. In: Blair Kirk D (ed) Graphics Gems III (IBM Version), The Graphics Gems Series. Academic Press, Cambridge, pp 199–202

    Chapter  Google Scholar 

  • Bunyk P, Kaufman AE, Silva CT (1997) Simple, fast, and robust ray casting of irregular grids. In: Hagen Hans, Nielson Gregory M, Post Frits H (eds) Dagstuhl ’97, Scientific Visualization, Dagstuhl, Germany, 9-13 June 1997. IEEE Computer Society, pp 30–36

  • Callahan SP, Ikits M, Comba JLD, Silva CT (2005) Hardware-assisted visibility sorting for unstructured volume rendering. IEEE Trans Vis Comput Graph 11(3):285–295

    Article  Google Scholar 

  • Farias RC, Mitchell JSB, Silva CT (2000) ZSWEEP: an efficient and exact projection algorithm for unstructured volume rendering. In: Lorensen William E, Crawfis Roger, Cohen-Or Daniel (eds) Proceeding of the 2000 Volume Visualization and Graphics Symposium, VVS 2000, Salt Lake City, Utah, USA, October 9-10, 2000. ACM / IEEE Computer Society, pp 91–99

  • Garrity Michael P (1990) Raytracing irregular volume data. Comput Graph 24(5:35–40

    Article  Google Scholar 

  • Grama A, Gupta A, Kumar V, (1993) Isoefficiency: measuring the scalability of parallel algorithms and architectures. IEEE Parallel Distrib Technol Syst Appl 1(3):12–21

    Article  Google Scholar 

  • Hutcheson A, Natoli V (2011) Memory bound versus compute bound: a quantitative study of cache and memory bandwidth in high performance applications. In: Technical report, Stone Ridge Technology

  • Kaufman AE (1996) Volume visualization. Vis Comput 28(1):165–167

    Google Scholar 

  • Kaufman AE, Mueller K (2005) Overview of volume rendering. In: Hansen Charles D, Johnson Christopher R (eds) The visualization handbook. Academic Press / Elsevier, Cambridge/Amsterdam, pp 127–174

    Chapter  Google Scholar 

  • Marroquim R, Maximo A, Farias RC, Esperança C (2008) Volume and isosurface rendering with gpu-accelerated cell projection*. Comput Graph Forum 27(1):24–35

    Article  Google Scholar 

  • Max NL (1995) Optical models for direct volume rendering. IEEE Trans Vis Comput Graph 1(2):99–108

    Article  Google Scholar 

  • Max N, Hanrahan P, Crawfis R (1990) Area and volume coherence for efficient visualization of 3d scalar functions. Acm Siggraph Comput Graph 24(5):27–33

    Article  Google Scholar 

  • Maximo A, Marroquim R, Farias RC (2010) Hardware-assisted projected tetrahedra. Comput Graph Forum 29(3):903–912

    Article  Google Scholar 

  • Min C, Kaufman AE, Yagel R (2000) Volume graphics. Springer, Berlin

    MATH  Google Scholar 

  • Miranda Fábio M, Filho WC (2011) Accurate volume rendering of unstructured hexahedral meshes. In: Lewiner T, da Silva TR (eds) 24th SIBGRAPI Conference on Graphics, Patterns and Images, Sibgrapi 2011, Alagoas, Maceió, Brazil, August 28-31, 2011. IEEE Computer Society, pp 93–100

  • Mueller C, Strengert M, Ertl T (2007) Adaptive load balancing for raycasting of non-uniformly bricked volumes. Parallel Comput 33(6):406–419

    Article  Google Scholar 

  • Newell M, Newell R, Sancha T (1998) A solution to the hidden surface problem, pp 27–32. 07

  • Shirley P, Tuchman A (1990) A polygonal approximation to direct scalar volume rendering. Acm Siggraph Computer Graphics

  • Spiliotis IM, Bekakos MP, Boutalis YS (2020) Parallel implementation of the image block representation using openmp. J Parallel Distrib Comput 137:134–147

    Article  Google Scholar 

  • Stein CM, Becker BG, Max NL (1995) Sorting and hardware assisted rendering for volume visualization. In: Kaufman Arie E, Krueger Wolfgang (eds) Proceedings of the 1994 Symposium on Volume Visualization, VVS 1994, Washington, DC, USA, October 17–18, 1994. ACM, pp 83–89

  • Weiler M, Kraus M, Merz M, Ertl T (2003) Hardware-based ray casting for tetrahedral meshes. In: Turk G, van Wijk JJ, Moorhead II Robert J (eds) 14th IEEE Visualization 2003 Conference, VIS 2003, Seattle, WA, USA, October 19-24, 2003. IEEE Computer Society, pp 333–340

  • Weiler M, Mallón PN, Kraus M, Ertl T (2004) Texture-encoded tetrahedral strips. In: 2004 IEEE Symposium on Volume Visualization and Graphics, VolVis 2004, Austin, TX, USA, October 10-12, 2004, pp 71–78. IEEE Computer Society

  • Wilhelms J, Van Gelder A (1991) A coherent projection approach for direct volume rendering. In: Thomas JJ (ed) Proceedings of the 18th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH 1991. Providence, RI, USA, April 27-30, 1991, pages 275–284. ACM

  • Williams PL (1992) Interactive splatting of nonrectilinear volumes. In: Kaufman AE, Nielson GM (eds) Proceedings IEEE Visualization ’92, Boston, Massachusetts, USA, October 19-23, 1992. IEEE Computer Society, pp 37–45

  • Williams PL (1992) Visibility-ordering meshed polyhedra. ACM Transactions on Graphics

  • Wylie B, Moreland K, Fisk LA, Crossno P (2002) Tetrahedral projection using vertex shaders. In: IEEE/SIGGRAPH Symposium on Volume Visualization and Graphics, VolVis 2002, October 28–29, 2002, Boston, MA, USA

Download references

Acknowledgements

The authors wish to thank Hung, Ekaterinaris, Rogers and Buning for providing available test datasets. This work was supported by the National Numerical Windtunnel Project and the Key Technology Research of Service Robot Basic Software (2020YFG0031).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Cheng Chen.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fan, L., Chen, C., Zhao, S. et al. Multi-threaded parallel projection tetrahedral algorithm for unstructured volume rendering. J Vis 24, 261–274 (2021). https://doi.org/10.1007/s12650-020-00701-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12650-020-00701-7

Keywords

Navigation