Optimized CUDA-Based PDE Solver for Reaction Diffusion Systems on Arbitrary Surfaces

  • Samira Michèle Descombes
  • Daljit Singh Dhillon
  • Matthias Zwicker
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9573)


Partial differential equation (PDE) solvers are commonly employed to study and characterize the parameter space for reaction-diffusion (RD) systems while investigating biological pattern formation. Increasingly, biologists wish to perform such studies with arbitrary surfaces representing ‘real’ 3D geometries for better insights. In this paper, we present a highly optimized CUDA-based solver for RD equations on triangulated meshes in 3D. We demonstrate our solver using a chemotactic model that can be used to study snakeskin pigmentation, for example. We employ a finite element based approach to perform explicit Euler time integrations. We compare our approach to a naive GPU implementation and provide an in-depth performance analysis, demonstrating the significant speedup afforded by our optimizations. The optimization strategies that we exploit could be generalized to other mesh based processing applications with PDE simulations.


CUDA GPU programming Reaction-diffusion systems Nonlinear PDEs FEM Explicit time-stepping 


  1. 1.
    Winters, K.H., Myerscough, M.R., Maini, P.K., Murray, J.D.: Tracking bifurcating solutions of a model biological pattern generator. IMPACT Comput. Sci. Eng. 2(4), 355–371 (1990)CrossRefzbMATHGoogle Scholar
  2. 2.
    Stewart, J.R., Edwards, H.C.: A framework approach for developing parallel adaptive multiphysics applications. Finite Elem. Anal. Des. 40(12), 1599–1617 (2004). the Fifteenth Annual Robert J. Melosh CompetitionCrossRefGoogle Scholar
  3. 3.
    Balay, S., Gropp, W., McInnes, L., Smith, B.: Efficient management of parallelism in object-oriented numerical software libraries. In: Arge, E., Bruaset, A., Langtangen, H. (eds.) Modern Software Tools for Scientific Computing, pp. 163–202. Birkhäuser, Boston (1997)CrossRefGoogle Scholar
  4. 4.
    Brandvik, T., Pullan, G.: Sblock: a framework for efficient stencil-based pde solvers on multi-core platforms. In: Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology, CIT 2010, pp. 1181–1188. IEEE Computer Society, Washington, DC (2010)Google Scholar
  5. 5.
    DeVito, Z., Joubert, N., Palacios, F., Oakley, S., Medina, M., Barrientos, M., Elsen, E., Ham, F., Aiken, A., Duraisamy, K., Darve, E., Alonso, J., Hanrahan, P.: Liszt: A domain specific language for building portable mesh-based pde solvers. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis, SC 2011, pp. 9: 1–9: 12. ACM, New York (2011)Google Scholar
  6. 6.
    Giles, M.B., Mudalige, G.R., Sharif, Z., Markall, G., Kelly, P.H.: Performance analysis of the op2 framework on many-core architectures. SIGMETRICS Perform. Eval. Rev. 38(4), 9–15 (2011)CrossRefGoogle Scholar
  7. 7.
    Karypis, G.: Metis - serial graph partitioning and fill-reducing matrixordering, March 2013.
  8. 8.
    Kondo, S., Arai, R.: A reaction-diffusion wave on the skin of the marine angelfish pomacanthus. Nature 678(376), 765–768 (1995)CrossRefGoogle Scholar
  9. 9.
    Kondo, S., Miura, T.: Reaction-diffusion model as a framework for understanding biological pattern formation. Science 329(5999), 1616–1620 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Meyer, M., Desbrun, M., Schröder, P., Barr, A.H.: Discrete differential-geometry operators for triangulated 2-manifolds. In: Hege, H.-C., Polthier, K. (eds.) Visualization and mathematics III, pp. 35–57. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Murray, J., Myerscough, M.: Pigmentation pattern formation on snakes. J. Theoret. Biol. 149(3), 339–360 (1991)CrossRefGoogle Scholar
  12. 12.
    Ragan-Kelley, J., Adams, A., Paris, S., Levoy, M., Amarasinghe, S., Durand, F.: Decoupling algorithms from schedules for easy optimization of image processing pipelines. ACM Trans. Graph. 31(4), 32:1–32:12 (2012)CrossRefGoogle Scholar
  13. 13.
    Reuter, M., Biasotti, S., Giorgi, D., Patan, G., Spagnuolo, M.: Discrete laplacebeltrami operators for shape analysis and segmentation. Comput. Graph. 33(3), 381–390 (2009). IEEE International Conference on Shape Modelling and Applications 2009CrossRefGoogle Scholar
  14. 14.
    Turing, A.M.: The chemical basis of morphogenesis. Philos. Trans. R. Soc. Lond. B Biol. Sci. 237(641), 37–72 (1952)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Samira Michèle Descombes
    • 1
  • Daljit Singh Dhillon
    • 1
  • Matthias Zwicker
    • 1
  1. 1.Institute of Computer ScienceUniversity of BernBernSwitzerland

Personalised recommendations