Skip to main content

Advertisement

Log in

Parallel computation of stream surfaces on GPUs

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

Abstract

Stream surfaces can reveal complex flow behaviors that are not available on streamlines, but their construction algorithm is also more sophisticated. A common strategy is to sample a series of streamlines from a seeding curve and stitch the neighboring streamlines to form surfaces. To maintain a uniform density of sample points, extra streamlines may be inserted when the flow diverges. This leads to high computation cost with sequential insertion operations, hindering the use of stream surfaces in interactive scenarios and large-scale learning. In this paper, we proposed two parallel strategies to construct stream surfaces on GPUs. Both strategies generate stream surfaces in multiple passes, where each pass consists of a streamline tracing phase and a ribbon construction phase. The first strategy aims at increasing throughput, by hiding the long generation time of an individual surface with computation from other surfaces. The second strategy aims at reducing latency, by generating redundant streamlines for a single surface. We evaluate the performance of the two strategies and compare them with a CPU baseline using ten datasets exhibiting various characteristics.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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

Similar content being viewed by others

References

  • Cai W, Heng P.-A (1997) Principal stream surfaces. In: Proceedings of IEEE Visualization Conference, pp 75–81

  • Camp D, Garth C, Childs H, Pugmire D, Joy K. I (2012) Parallel stream surface computation for large data sets. In: Proceedings of IEEE symposium on large data analysis and visualization, pp 39–47

  • Chen C.-M, Nouanesengsy B, Lee T.-Y, Shen H.-W (2012) Flow-guided file layout for out-of-core pathline computation. In Proceedings of IEEE symposium on large data analysis and visualization, pp 109–112

  • Chen C.-M, Shen H.-W (2013) Graph-based seed scheduling for out-of-core FTLE and pathline computation. In: Proceedings of IEEE symposium on large data analysis and visualization, pp. 15–23

  • Chen C.-M, Xu L, Lee T.-Y, Shen H.-W (2012) A flow-guided file layout for out-of-core streamline computation. In Proceedings of IEEE pacific visualization symposium, pp 145–152

  • Cook S (2012) CUDA Programming: a Developer’s Guide to Parallel Computing with GPUs. Newnes

  • Dai Z, Deng L, Che Y, Li M, Zhang J, Wang Y (2023) Evaluating performance portability of five shared-memory programming models using a high-order unstructured cfd solver. J Parallel Distrib Comput 187:104831

    Article  Google Scholar 

  • Garth C, Krishnan H, Tricoche X, Bobach T, Joy KI (2008) Generation of accurate integral surfaces in time-dependent vector fields. IEEE Trans Visual Comput Gr 14(6):1404–1411

    Article  Google Scholar 

  • Garth C, Wiebel A, Tricoche X, Joy KI, Scheuermann G (2008) Lagrangian visualization of flow-embedded surface structures. Comput Gr Forum 27(3):1007–1014

    Article  Google Scholar 

  • Gerndt A, Hentschel B, Wolter M, Kuhlen T, Bischof C. H (2004) VIRACOCHA: An efficient parallelization framework for large-scale cfd post-processing in virtual environments. In: Proceedings of the ACM/IEEE Conference on Supercomputing, pp 50–50

  • Guo H, Zhang J, Liu R, Liu L, Yuan X, Huang J, Meng X, Pan J (2014) Advection-based sparse data management for visualizing unsteady flow. IEEE Trans Visual Comput Gr 20(12):2555–2564

    Article  Google Scholar 

  • Han J, Tao J, Wang C (2020) FlowNet: A deep learning framework for clustering and selection of streamlines and stream surfaces. IEEE Trans Vis Comput Gr 26(4):1732–1744

    Google Scholar 

  • Hultquist J.P.M (1992) Constructing stream surfaces in steady 3D vector fields. In Proceedings of IEEE Visualization Conference, pp 171–178

  • Li R, Deng L, Dai Z, Zhang J, Liu J, Liu G (2023) A data-centric approach for efficient and scalable cfd implementation on multi-gpus clusters. In International conference on parallel and distributed computing: applications and technologies, pp. 93–104

  • Lu K, Shen H.-W, Peterka T (2014) Scalable computation of stream surfaces on large scale vector fields. In Proceedings of ACM/IEEE supercomputing conference, pp. 1008–1019

  • Machado GM, Sadlo F, Ertl T (2014) Image-based streamsurfaces. In Proceedings of SIBGRAPI conference on graphics, patterns and images, pp. 343–350

  • Martinez Esturo J, Schulze M, Rössl C, Theisel H (2013) Global selection of stream surfaces. Comput Gr Forum 32(2):113–122

    Article  Google Scholar 

  • McLoughlin T, Laramee RS, Peikert R, Post FH, Chen M (2010) Over two decades of integration-based, geometric flow visualization. Comput Gr Forum 29(6):1807–1829

    Article  Google Scholar 

  • McLoughlin T, Laramee R. S, Zhang E (2009) Easy integral surfaces: A fast, quad-based stream and path surface algorithm. In Proceedings of computer graphics international, pp. 73–82

  • Schafhitzel T, Tejada E, Weiskopf D, Ertl T (2007) Point-based stream surfaces and path surfaces. In Proceedings of graphics interface, pp. 289–296

  • Scheuermann G, Bobach T, Hagen H, Mahrous K, Hamann B, Joy K. I, Kollmann W (2001) A tetrahedra-based stream surface algorithm. In Proceedings of IEEE visualization conference, pp. 151–158

  • Schneider D, Wiebel A, Scheuermann G (2009) Smooth stream surfaces of fourth order precision. Comput Gr Forum 28(3):871–878

    Article  Google Scholar 

  • Schulze M, Martinez Esturo J, Günther T, Rössl C, Seidel H-P, Weinkauf T, Theisel H (2014) Sets of globally optimal stream surfaces for flow visualization. Comput Gr Forum 33(3):1–10

    Article  Google Scholar 

  • Sujudi D, Haimes R (1996) Integration of particles and streamlines in a spatially-decomposed computation. In Proceedings of parallel computational fluid dynamics

  • Tao J, Wang C (2016) Peeling the flow: A sketch-based interface to generate stream surfaces. In Proceedings of ACM SIGGRAPH Asia Symposium on Visualization, pp. 14:1–14:8

  • Tao J, Wang C (2018) Semi-automatic generation of stream surfaces via sketching. IEEE Trans Visual Comput Gr 24(9):2622–2635

    Article  Google Scholar 

  • Ueng S-K, Sikorski C, Ma K-L (1997) Out-of-core streamline visualization on large unstructured meshes. IEEE Trans Visual Comput Gr 3(4):370–380

    Article  Google Scholar 

  • van Wijk J.J (1993) Implicit stream surfaces. In Proceedings of IEEE visualization conference, pp. 245–252

  • Yu H, Wang C, Ma K.-L (2007) Parallel hierarchical visualization of large time-varying 3D vector fields. In Proceedings of the 2007 ACM/IEEE conference on Supercomputing, pp 24

  • Zhang J, Dai Z, Li R, Deng L, Liu J, Zhou N (2023) Acceleration of a production-level unstructured grid finite volume cfd code on gpu. Appl Sci 13(10):6193

    Article  Google Scholar 

Download references

Acknowledgements

This work is supported by National Key R &D Program of China through grant 2021YFB0300103, and the National Natural Science Foundation of China through grants 62172456, 62372484, and 61902446.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jun Tao.

Additional information

Publisher’s Note

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

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Xie, D., Zhang, J. & Tao, J. Parallel computation of stream surfaces on GPUs. J Vis 27, 367–382 (2024). https://doi.org/10.1007/s12650-024-00967-1

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12650-024-00967-1

Keywords