Skip to main content
Log in

Accelerating solid–fluid interaction based on the immersed boundary method on multicore and GPU architectures

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

Abstract

This work proposes several approaches to accelerate the solid–fluid interaction through the use of the Immersed Boundary method on multicore and GPU architectures. Different optimizations on both architectures have been proposed, focusing on memory management and workload mapping. We have chosen two different test scenarios which consist of single-solid and multiple-solid simulations. The performance analysis has been carried out on an intensive set of test cases to analyze the proposed optimizations using multiple CPUs (2) and GPUs (4). An effective performance is obtained for single-solid executions using one CPU (Intel Xeon E5520) achieving a speedup peak equal to 5.5. It is reached a higher benefit on multiple solids obtaining a top speedup of approximately 5.9 and 9 using one CPU (8 cores) and two CPUs (16 cores), respectively. On GPU (Kepler K20c) architecture, two different approaches are presented as the best alternative: one for single-solid executions and one for multiple-solid executions. The best approach obtained for one solid executions achieves a speedup of approximately 17 with respect the sequential counterpart. In contrast, for multiple-solid executions the benefit is much higher, being this type of problems much more suitable for GPU and reaching a peak speedup of 68, 115 and 162 using 1, 2 and 4 GPUs, respectively.

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

Similar content being viewed by others

References

  1. Xu S, Wang ZJ (2006) An immersed interface method for simulating the interaction of a fluid with movies boundaries. J Comput Phys 216(2):454–493

    Article  MathSciNet  MATH  Google Scholar 

  2. Calhoun D (2002) A Cartesian grid method for solving the two-dimensional streamfunction-vorticity equations in irregular regions. J Comput Phys 176(2):231–275

    Article  MathSciNet  MATH  Google Scholar 

  3. Russell D, Wang ZJ (2003) A Cartesian grid method for modelling multiple moving objects in 2D incompressible viscous flows. J Comput Phys 191:177–205

    Article  MathSciNet  MATH  Google Scholar 

  4. Lima E Silva ALF, Silveira-Neto A, Damasceno JJR (2003) Numerical simulation of two-dimensional flows over circular cylinder using immersed boundary method. J Comput Phys 189:351–370

  5. Tutar M, Holdo AE (2001) Computational modelling of flow around cylinder in sub-critical flow regime with various turbulence models. Int J Numer Methods Fluids 35(7):763–784

    Article  MATH  Google Scholar 

  6. Norbeg C (2003) Fluctuating lift on a circular cylinder: review and new measurements. J Fluids Struct 17(1):57–96

    Article  Google Scholar 

  7. Ong L, Wallace J (1996) The velocity field of a turbulent very near wake of a circular cylinder. Exp Fluids 20(6):441–453

    Article  Google Scholar 

  8. Goodnight N (2011) CUDA/OpenGL fluid simulation. http://new.math.uiuc.edu/MA198-2008/schamber2/fluidsGL

  9. Tolke J (2010) Implementation of a Lattice Boltzmann kernel using the compute unified device architecture developed by nVIDIA. Comput Visual Sci 13(1):29–39

    Article  MathSciNet  Google Scholar 

  10. Zhao Y (2007) Lattice Boltzmann based PDE solver on the GPU. Vis Comput 24(5):323–333

    Article  Google Scholar 

  11. Bernaschi M, Fatica M, Melchiona S, Succi S, Kaxiras E (2010) A flexible high-performance Lattice Boltzmann GPU code for the simulations of fluid flows in complex geometries. Concurrency Computa Pract Exper 22:1–14

  12. Rinaldi PR, Dari EA, Vénere MJ, Clausse A (2012) A Lattice–Boltzmann solver for 3D fluid simulation on GPU. Simul Model Pract Theory 55:163–171

    Article  Google Scholar 

  13. Zhou H, Mo G, Wu F, Zhao J, Rui M, Cen K (2012) GPU implementation of lattice Boltzmann method for flows with curved boundaries. Comput Methods Appl Mech Eng, 225–228

  14. Peskin CS (2002) The immersed boundary method. Acta Numer 11:479–517

    Article  MathSciNet  MATH  Google Scholar 

  15. Uhlmann M (2005) An immersed boundary method with direct forcing for the simulation of particulate flows. J Comput Phys 209(2):448–476

    Article  MathSciNet  MATH  Google Scholar 

  16. Zhu L, Peskin CS (2000) Interaction of two flapping filament in a flow soap film. Phys Fluids 15:1954–1960

    Article  MathSciNet  Google Scholar 

  17. Zhu L, Peskin CS (2002) Simulation of a flapping flexible filament in a flowing soap film by the immersed boundary method. Phys Fluids 179:452–468

    MathSciNet  MATH  Google Scholar 

  18. Pinelli A, Naqavi I, Piomelli U, Favier J (2010) Immersed-Boundary methods for general finite-differences and finite-volume Navier–Stokes solvers. J Comput Phys 229(24):9073–9091

    Article  MathSciNet  MATH  Google Scholar 

  19. L’opez-Portugués M, López-Fernández JA, José Ranilla, Ayestarán RG, Las-Heras F (2013) Parallelization of the FMM on distributed-memory GPGPU systems for acoustic-scattering prediction. J Supercomput 64(1):17–27

  20. López-Portugués M, López-Fernández JA, Díaz-Gracia N, Ayestarán RG, José Ranilla (2014) Aircraft noise scattering prediction using different accelerator architectures, pp 1–11

  21. Laytona SK, Krishnana A, Barbaa LA (2011) cuIBM—a GPU-accelerated immersed boundary method. 23rd international conference on parallel computational fluid dynamics (ParCFD)

  22. Taira K, Colonius T (2007) The immersed boundary method: a projection approach. J Comput Phys 225(2):2118–2137

    Article  MathSciNet  MATH  Google Scholar 

  23. Favier J, Revell A, Pinelli A (2013) A lattice boltzmann-immersed boundary method to simulate the fluid interaction with moving and slender flexible objects. HAL hal (00822044)

  24. Roma AM, Peskin CS, Berger MJ (1999) An adaptive version of the immersed boundary method. J Comput Phys 153:509–534

    Article  MathSciNet  MATH  Google Scholar 

  25. CETA-CIEMAT. http://www.ceta-ciemat.es

Download references

Acknowledgments

This work has been supported by the Spanish Consolider grant Supercomputación y e-Ciencia (SyeC) (Ref: CSD2007-00050) and by the computing facilities of Extremadura Research Centre for Advanced Technologies (CETA-CIEMAT) [25]. The author would like to thank Julien Favier, Assistant Professor at Aix Marseille Université, Alfredo Pinelli at Full Professor at City of London University and Manuel Prieto-Matias at Complutense University of Madrid, for the valuable feedback on this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pedro Valero-Lara.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Valero-Lara, P. Accelerating solid–fluid interaction based on the immersed boundary method on multicore and GPU architectures. J Supercomput 70, 799–815 (2014). https://doi.org/10.1007/s11227-014-1262-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-014-1262-2

Keywords

Navigation