FMMTL: FMM Template Library A Generalized Framework for Kernel Matrices

Conference paper
Part of the Lecture Notes in Computational Science and Engineering book series (LNCSE, volume 103)


In response to two decades of development in structured dense matrix algorithms and a vast number of research codes, we present designs and progress towards a codebase that is abstracted over the primary domains of research. In the domain of mathematics, this includes the development of interaction kernels and their low-rank expansions. In the domain of high performance computing, this includes the optimized construction, traversal, and scheduling algorithms for the appropriate operations. We present a versatile system that can encompass the design decisions made over a decade of research while providing an abstracted, intuitive, and usable front-end that can integrated into existing linear algebra libraries.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    E. Agullo, B. Bramas, O. Coulaud, E. Darve, M. Messner, T. Takahashi, Pipelining the Fast Multipole Method over a Runtime System. Research Report RR-7981, INRIA, May 2012Google Scholar
  2. 2.
    J. Bédorf, E. Gaburov, S. Portegies Zwart, A sparse octree gravitational n-body code that runs entirely on the GPU processor. J. Comput. Phys. 231(7), 2825–2839 (2012)CrossRefMATHMathSciNetGoogle Scholar
  3. 3.
    H.A. Boateng, R. Krasny, Comparison of treecodes for computing electrostatic potentials in charged particle systems with disjoint targets and sources. J. Comput. Chem. 34(25), 2159–2167 (2013)CrossRefGoogle Scholar
  4. 4.
    C. Cecka, E. Darve, Fourier-based fast multipole method for the helmholtz equation. SIAM J. Sci. Comput. 35(1), A79–A103 (2013)CrossRefMATHMathSciNetGoogle Scholar
  5. 5.
    H. Cheng, L. Greengard, V. Rokhlin, A fast adaptive multipole algorithm in three dimensions. J. Comput. Phys. 155(2), 468–498 (1999)CrossRefMATHMathSciNetGoogle Scholar
  6. 6.
    W. Fong, E. Darve, The black-box fast multipole method. J. Comput. Phys. 228(23), 8712–8725 (2009)CrossRefMATHMathSciNetGoogle Scholar
  7. 7.
    J. Kurzak, B.M. Pettitt, Fast multipole methods for particle dynamics. Mol. Simul. 32(10–11), 775–790 (2006)CrossRefMATHGoogle Scholar
  8. 8.
    H. Ltaief, R. Yokota, Data-driven execution of fast multipole methods. Concurr. Comput.: Pract. Experience, pp. n/a–n/a (2013)Google Scholar
  9. 9.
    J.K. Salmon, M.S. Warren, Skeletons from the treecode closet. J. Comput. Phys. 111(1), 136–155 (1994)CrossRefMATHGoogle Scholar
  10. 10.
    T. Takahashi, C. Cecka, W. Fong, E. Darve, Optimizing the multipole-to-local operator in the fast multipole method for graphical processing units. Int. J. Numer. Methods Eng. 89(1), 105–133 (2012)CrossRefMATHGoogle Scholar
  11. 11.
    L. Ying, A kernel-independent fast multpole algorithm for radial basis functions. J. Comput. Phys. 213, 451–457 (2006)CrossRefMATHGoogle Scholar
  12. 12.
    L. Ying, G. Biros, D. Zorin, A kernel-independent adaptive fast multipole algorithm in two and three dimensions. J. Comput. Phys. 196(2), 591–626 (2004)CrossRefMATHMathSciNetGoogle Scholar
  13. 13.
    R. Yokota, An fmm based on dual tree traversal for many-core architectures. J. Algorithms Comput. Technol. 7, 301–324 (2013)CrossRefGoogle Scholar
  14. 14.
    R. Yokota, L.A. Barba, Hierarchical n-body simulations with autotuning for heterogeneous systems. Comput. Sci. Eng. 14(3), 30–39 (2012)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Harvard UniversityCambridgeUSA
  2. 2.Boston UniversityBostonUSA

Personalised recommendations