Skip to main content
Log in

Parallel computing of 3D smoking simulation based on OpenCL heterogeneous platform

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Open Computing Language (OpenCL) is an open royalty-free standard for general purpose parallel programming across Central Processing Units (CPUs), Graphic Processing Units (GPUs) and other processors. This paper introduces OpenCL to implement real-time smoking simulation in a virtual surgery training simulation system. Firstly, the Computational Fluid Dynamics (CFD) is adopted to construct the real-time smoking simulation model based on the Navier–Stokes (N-S) equations of an incompressible fluid under the condition of normal temperature and pressure. Then we propose a parallel computing technique based on OpenCL to accomplish the parallel computing of smoking simulation model on CPU and GPU, respectively. Finally, we render the smoke in real time by using a three-dimensional (3D) texture volume rendering method. Experimental results show that the parallel computing technique we have proposed achieve a satisfactory effect on image quality and rendering rate both on CPU and GPU.

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.

Similar content being viewed by others

References

  1. Brandvik T, Pullan G (2007) Acceleration of a two-dimensional Euler Flow Solver Using Commodity Graphics Hardware. Proceedings of the Institution of Mechanical Engineers, Part C:. J Mech Eng Sci 221(C12):1745–1748

    Google Scholar 

  2. Breitbart J, Fohry C (2010) OpenCL—an effective programming model for data parallel computations at the cell broadband engine. In: Proceedings of the 2010 IEEE international symposium on parallel and distributed processing, workshops and PhD forum, IPDPSW 2010

    Google Scholar 

  3. Chorin A, Marsden JE (1990) A mathematical introduction to fluid mechanics, 2nd edn. Springer, New York

    Book  MATH  Google Scholar 

  4. Cullip T, Neumann U (1994) Accelerating volume reconstruction with 3D texture mapping hardware. Dissertation, University of North Carolina

  5. Weiskopf D, Schafhitrel T, Erl T (2007) Texture-based visualization of 3D unsteady flow by real-time advection and volumetric illumination. IEEE Trans Vis Comput Graph 13(3):569–582

    Google Scholar 

  6. Denaro FM (2003) On the application of the Helmholtz-Hodge decomposition in projection methods for incompressible flows with general boundary condition. Int J Numer Methods Fluids 43(1):43–69

    Article  MathSciNet  MATH  Google Scholar 

  7. Fatalian K, Sugerman J, Hanrahan P (2004) Understanding the efficiency of GPU algorithms for matrix-matrix multiplication. In: Proceedings of the SIGGRAPH /EUROGRAPHICS workshop on graphics hardware, pp 133–138

    Google Scholar 

  8. Fedkiw R, Stam J, Jensen HW (2001) Visual simulation of smoke. In: Proceedings of the ACM SIGGRAPH conference on computer graphics, pp 15–22

    Google Scholar 

  9. Foster N, Metaxas D (1997) Modeling the motion of a hot, turbulent gas. In: Proceedings of the ACM SIGGRAPH conference on computer graphics, pp 181–188

    Chapter  Google Scholar 

  10. Foster N, Metaxas D (1997) Controlling fluid animation. In: Proceedings of computer graphics international conference, CGI, pp 178–188

    Chapter  Google Scholar 

  11. Khronos OpenCL Working Group (2010) The OpenCL Specification, Version: 1.1, Document Revision: 36. http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf. Accessed 15 October 2010

  12. Kim T, Thürey N, James D, Markus G (2008) Wavelet turbulence for fluid simulation. ACM Trans Graph 27(3): Article Number 50, August 1, 2008

  13. Kraus M, Strengert M, Klein T et al (2007) Adaptive sampling in three dimensions for volume rendering on GPU. In: Asia-Pacific symposium on visualisation, APVIS 2007, Proceedings, pp 113–120

    Chapter  Google Scholar 

  14. Nottingham A, Irwin B (2009) GPU packet classification using OpenCL: a consideration of viable classification methods. In: Proceedings of the annual research conference of the South African institute of computer scientists and information technologists, pp 160–169

    Google Scholar 

  15. Owens JD, Houseton M, Luebke D, Green S, Stone JE, Phillips JC (2008) GPU computing. Proc IEEE 96(5):879–899

    Article  Google Scholar 

  16. Purnomo B, Rubin N, Houston M (2010) ATI stream profiler: a tool to optimize an OpenCL kernel on ATI radeon GPUs. In: ACM SIGGRAPH 2010 posters, SIGGRAPH ’10

    Google Scholar 

  17. Robler F, Botchen P, Ertl T (2008) Dynamic shader generation for flexible multi-volume visualization. In: IEEE Pacific visualisation symposium 2008, PacificVis proceedings, pp 9–16

    Google Scholar 

  18. Schechter H, Bridson R (2008) Evolving sub-grid turbulence for smoke animation. In: Proceedings of the 2008 ACM SIGGRAPH/Eurographics symposium on computer animation, pp 1–7

    Google Scholar 

  19. Song O-Y, Shin H, Ko H-S (2005) Stable but nondissipative water. ACM Trans Graph 24(1):81–97

    Article  Google Scholar 

  20. Stam J (1999) Stable fluids. In: Proceedings of the 26th annual conference on computer graphics and interactive techniques, SIGGRAPH 99, pp 121–128

    Chapter  Google Scholar 

  21. Stone JE, Gohara D, Shi G (2010) OpenCL-a parallel programming standard for heterogeneous computing systems. Comput Sci Eng 12(3):66–72

    Article  Google Scholar 

  22. Yeh TY, Faloutsos P, Reinman G (2006) Enabling real-time physics simulation in future interactive entertainment. In: Proceedings—Sandbox symposium 2006: ACM SIGGRAPH video game symposium, Sandbox ’06, pp 71–81

    Chapter  Google Scholar 

  23. Zhang W, Zhang L, Sun S, Xing Y, Wang Y, Zheng J (2009) A preliminary study of OpenCL for accelerating CT reconstruction and image recognition. In: IEEE nuclear science symposium conference record, NSS/MIC 2009, pp 4059–4063

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zhiyong Yuan.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Yuan, Z., Si, W., Liao, X. et al. Parallel computing of 3D smoking simulation based on OpenCL heterogeneous platform. J Supercomput 61, 84–102 (2012). https://doi.org/10.1007/s11227-011-0652-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-011-0652-y

Keywords

Navigation