Abstract
There has been a large increase in the amount of work on hierarchical low-rank approximation methods, where the interest is shared by multiple communities that previously did not intersect. This objective of this article is two-fold; to provide a thorough review of the recent advancements in this field from both analytical and algebraic perspectives, and to present a comparative benchmark of two highly optimized implementations of contrasting methods for some simple yet representative test cases. The first half of this paper has the form of a survey paper, to achieve the former objective. We categorize the recent advances in this field from the perspective of compute-memory tradeoff, which has not been considered in much detail in this area. Benchmark tests reveal that there is a large difference in the memory consumption and performance between the different methods.
This is a preview of subscription content, access via your institution.
References
Ambikasaran, S., Darve, E.: An O(NlogN) fast direct solver for partial hierarchically semi-separable matrices. J. Sci. Comput. 57, 477–501 (2013)
Ambikasaran, S., Darve, E.: The inverse fast multipole method. arXiv:1407.1572v1 (2014)
Ambikasaran, S., Li, J.-Y., Kitanidis, P.K., Darve, E.: Large-scale stochastic linear inversion using hierarchical matrices. Comput. Geosci. 17(6), 913–927 (2013)
Amestoy, P., Ashcraft, C., Boiteau, O., Buttari, A., L’Excellent, J.-Y., Weisbecker, C.: Improving multifrontal methods by means of block low-rank representations. SIAM J. Sci. Comput. 37(3), A1451–A1474 (2015)
Aminfar, A., Darve, E.: A fast, memory efficient and robust sparse preconditioner based on a multifrontal approach with applications to finite-element matrices. Int. J. Numer. Methods Eng. 107, 520–540 (2016)
Aminfar, A., Ambikasaran, S., Darve, E.: A fast block low-rank dense solver with applications to finite-element matrices. J. Comput. Phys. 304, 170–188 (2016)
Anderson, C.R.: An implementation of the fast multipole method without multipoles. SIAM J. Sci. Stat. Comput. 13(4), 923–947 (1992)
Appel, A.W.: An efficient program for many-body simulation. SIAM J. Sci. Stat. Comput. 6(1), 85–103 (1985)
Barba, L.A., Yokota, R.: How will the fast multipole method fare in the exascale era? SIAM News 46(6), 1–3 (2013)
Barnes, J., Hut, P.: O(NlogN) force-calculation algorithm. Nature 324, 446–449 (1986)
Bebendorf, M.: Approximation of boundary element matrices. Numer. Math. 86, 565–589 (2000)
Bebendorf, M.: Hierarchical Matrices. Lecture Notes in Computational Science and Engineering, vol. 63. Springer, Berlin (2008)
Bebendorf, M., Rjasanow, S.: Adaptive low-rank approximation of collocation matrices. Computing 70, 1–24 (2003)
Bédorf, J., Gaburov, E., Fujii, M.S., Nitadori, K., Ishiyama, T., Portegies Zwart, S.: 24.77 Pflops on a gravitational tree-code to simulate the milky way galaxy with 18600 GPUs. In: Proceedings of the 2014 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, pp. 1–12 (2014)
Berman, C.L.: Grid-multipole calculations. SIAM J. Sci. Comput. 16(5), 1082–1091 (1995)
Börm, S.: Construction of data-sparse h 2-matrices by hierarchical compression. SIAM J. Sci. Comput. 31(3), 1820–1839 (2009)
Börm, S., Grasedyck, L.: Hybrid cross approximation of integral operators. Numer. Math. 101, 221–249 (2005)
Börm, S., Grasedyck, L., Hackbusch, W.: Introduction to hierarchical matrices with applications. Eng. Anal. Bound. Elem. 27, 405–422 (2003)
Bremer, J.: A fast direct solver for the integral equations of scattering theory on planar curves with corners. J. Comput. Phys. 231, 1879–1899 (2012)
Brunner, D., Junge, M., Rapp, P., Bebendorf, M., Gaul, L.: Comparison of the Fast Multipole Method with Hierarchical Matrices for the Helmholtz-BEM. Comput. Model. Eng. Sci. 58(2), 131–160 (2010)
Burant, J.C., Strain, M.C., Scuseria, G.E., Frisch, M.J.: Analytic energy gradients for the Gaussian very fast multipole method (GvFMM). Chem. Phys. Lett. 248, 43–49 (1996)
Chaillat, S., Bonnet, M., Semblat, J.-F.: A multi-level fast multipole BEM for 3-D elastodynamics in the frequency domain. Comput. Methods Appl. Mech. Eng. 197, 4233–4249 (2008)
Chan, T.F.: On the existence and computation of LU-factorizations with small pivots. Math. Comput. 42(166), 535–547 (1984)
Chan, T.F.: Rank revealing QR factorizations. Linear Algebra Appl. 88/89, 67–82 (1987)
Chandrasekaran, S., Ipsen, I.C.F.: On rank-revealing factorizations. SIAM J. Matrix Anal. Appl. 15(2), 592–622 (1994)
Chandrasekaran, S., Dewilde, P., Gu, M., Lyons, W., Pals, T.: A fast solver for HSS representations via sparse matrices. SIAM J. Matrix Anal. Appl. 29(1), 67–81 (2006)
Chandrasekaran, S., Dewilde, P., Gu, M., Somasunderam, N.: On the numerical rank of the off-diagonal blocks of Schur complements of discretized elliptic PDEs. SIAM J. Matrix Anal. Appl. 31(5), 2261–2290 (2010)
Cheng, H., Gimbutas, Z., Martinsson, P.G., Rokhlin, V.: On the compression of low rank matrices. SIAM J. Sci. Comput. 26(4), 1389–1404 (2005)
Choi, C.H., Ruedenberg, K., Gordon, M.S.: New parallel optimal-parameter fast multipole method (OPFMM). J. Comput. Chem. 22(13), 1484–1501 (2001)
Corona, E., Martinsson, P.G., Zorin, D.: An O(N) direct solver for integral equations on the plane. Appl. Comput. Harmon. Anal. 38, 284–317 (2015)
Coulaud, O., Fortin, P., Roman, J.: High performance BLAS formulation of the multipole-to-local operator in the fast multipole method. J. Comput. Phys. 227, 1836–1862 (2008)
Dachsel, H.: Corrected article: “an error-controlled fast multipole method”. J. Chem. Phys. 132, 119901 (2010)
Darve, E., Havé, P.: A fast multipole method for Maxwell equations stable at all frequencies. Philos. Trans. R. Soc. Lond. A 362, 603–628 (2004)
Darve, E., Cecka, C., Takahashi, T.: The fast multipole method on parallel clusters, multicore processors, and graphics processing units. C.R. Mec. 339, 185–193 (2011)
Dehnen, W.: A hierarchical O(N) force calculation algorithm. J. Comput. Phys. 179(1), 27–42 (2002)
Dutt, A., Gu, M., Rokhlin, V.: Fast algorithms for polynomial interpolation, integration, and differntiation. SIAM J. Numer. Anal. 33(5), 1689–1711 (1996)
Elliott, W.D., Board, J.A.: Fast Fourier transform accelerated fast multipole algorithm. SIAM J. Sci. Comput. 17(2), 398–415 (1996)
Ethridge, F., Greengard, L.: A new fast-multipole accelerated Poisson solver in two dimensions. SIAM J. Sci. Comput. 23(3), 741–760 (2001)
Fong, W., Darve, E.: The black-box fast multipole method. J. Comput. Phys. 228, 8712–8725 (2009)
Fortin, P.: Multipole-to-local operator in the fast multipole method: Comparison of FFT, rotations and BLAS improvements. Technical Report RR-5752, Rapports de recherche, et theses de l’Inria (2005)
Gillman, A., Barnett, A., Martinsson, P.G.: A spectrally accurate direct solution technique for frequency-domain scattering problems with variable media. BIT Numer. Math. 55, 141–170 (2015)
Gimbutas, Z., Greengard, L.: Fast multi-particle scattering: a hybrid solver for the Maxwell equations in microstructured materials. J. Comput. Phys. 232, 22–32 (2013)
Gimbutas, Z., Rokhlin, V.: A generalized fast multipole method for nonoscillatory kernels. SIAM J. Sci. Comput. 24(3), 796–817 (2002)
Goreinov, S.A., Tyrtyshnikov, E.E., Zamarashkin, N.L.: A theory of pseudoskeleton approximations. Linear Algebra Appl. 261(1–3), 1–21 (1997)
Grasedyck, L., Hackbusch, W.: Construction and arithmetics of H-matrices. Computing 70, 295–334 (2003)
Grasedyck, L., Kriemann, R., Le Borne, S.: Parallel black box H-LU preconditioning for elliptic boundary value problems. Comput. Vis. Sci. 11, 273–291 (2008)
Grasedyck, L., Hackbusch, W., Kriemann, R.: Performance of H-LU preconditioning for sparse matrices. Comput. Methods Appl. Math. 8(4), 336–349 (2008)
Grasedyck, L., Kriemann, R., Le Borne, S.: Domain decomposition based H-LU preconditioning. Numer. Math. 112, 565–600 (2009)
Gray, A.G., Moore, A.W.: N-body problems in statistical learning. In: Leen, T.K., Dietterich, T.G., Tresp, V. (eds.) Advances in Neural Information Processing Systems, vol. 13, pp. 521—527. MIT Press, Cambridge (2001)
Greengard, L., Rokhlin, V.: A fast algorithm for particle simulations. J. Comput. Phys. 73(2), 325–348 (1987)
Greengard, L., Rokhlin, V.: A new version of the fast multipole method for the Laplace equation in three dimensions. Acta Numer. 6, 229–269 (1997)
Greengard, L., Gueyffier, D., Martinsson, P.G., Rokhlin, V.: Fast direct solvers for integral equations in complex three dimensional domains. Acta Numer. 18, 243–275 (2009)
Gu, M., Eisenstat, S.C.: Efficient algorithms for computing a strong rank-revealing QR factorization. SIAM J. Sci. Comput. 17(4), 848–869 (1996)
Gumerov, N.A., Duraiswami, R.: Fast radial basis function interpolation via preconditioned Krylov iteration. SIAM J. Sci. Comput. 29(5), 1876–1899 (2007)
Hackbusch, W.: A sparse matrix arithmetic based on H-matrices, part I: Introduction to H-matrices. Computing 62, 89–108 (1999)
Hackbusch, W., Nowak, Z.P.: On the fast matrix multiplication in the boundary element method by panel clustering. Numer. Math. 54, 463–491 (1989)
Hackbusch, W., Khoromskij, B., Sauter, S.A.: On h 2-matrices. In: Bungartz, H., Hoppe, R., Zenger, C. (eds.) Lectures on Applied Mathematics. Springer, Berlin (2000)
Halko, N., Martinsson, P.G., Tropp, J.A.: Finding structure with randomness: probabilistic algorithms for constructing approximate matrix decompositions. SIAM Rev. 53(2), 217–288 (2011)
Hao, S., Martinsson, P.G., Young, P.: An efficient and highly accurate solver for multi-body acoustic scattering problems involving rotationally symmetric scatterers. Comput. Math. Appl. 69, 304–318 (2015)
Hénon, P., Saad, Y.: A parallel multistage ILU factorization based on a hierarchical graph decomposition. SIAM J. Sci. Comput. 28(6), 2266–2293 (2006)
Hesford, A.J., Waag, R.C.: Reduced-rank approximations to the far-field transform in the gridded fast multipole method. J. Comput. Phys. 230, 3656–3667 (2011)
Ho, K.L., Greengard, L.: A fast direct solver for structured linear systems by recursive skeletonization. SIAM J. Sci. Comput. 34(5), A2507–A2532 (2012)
Ho, K.L., Ying, L.: Hierarchical interpolative factorization for elliptic operators: Integral equations. arXiv:1307.2666 (2015)
Hong, Y.P., Pan, C.T.: Rank-revealing QR factorizations and the singular value decomposition. Math. Comput. 58(197), 213–232 (1992)
Hwang, T.-M., Lin, W.-W., Yang, E.K.: Rank revealing LU factorizations. Linear Algebra Appl. 175, 115–141 (1992)
Hwang, T.-M., Lin, W.-W., Pierce, D.: Improved bound for rank revealing LU factorizations. Linear Algebra Appl. 261(1), 173–186 (1997)
Ibeid, H., Yokota, R., Pestana, J., Keyes, D.: Fast multipole preconditioners for sparse matrices arising from elliptic equations. arXiv:1308.3339 (2016)
Izadi, M.: Hierarchical Matrix Techniques on Massively Parallel Computers. Ph.D. thesis, Universitat Leipzig (2012)
Kong, W.Y., Bremer, J., Rokhlin, V.: An adaptive fast direct solver for boundary integral equations in two dimensions. Appl. Comput. Harmon. Anal. 31, 346–369 (2011)
Langston, H., Greengard, L., Zorin, D.: A free-space adaptive FMM-based PDE solver in three dimensions. Commun. Appl. Math. Comput. Sci. 6(1), 79–122 (2011)
Le Borne, S.: Multilevel hierarchical matrices. SIAM J. Matrix Anal. Appl. 28(3), 871–889 (2006)
Lee, D., Vuduc, R., Gray, A.G.: A distributed kernel summation framework for general-dimension machine learning. In: Proceedings of the 2012 SIAM International Conference on Data Mining (2012)
Lessel, K., Hartman, M., Chandrasekaran, S.: A fast memory efficient construction algorithm for hierarchically semi-separable representations. http://scg.ece.ucsb.edu/publications/MemoryEfficientHSS.pdf (2015)
Li, J.-Y., Ambikasaran, S., Darve, E.F., Kitanidis, P.K.: A Kalman filter powered by h 2-matrices for quasi-continuous data assimilation problems. Water Resour. Res. 50, 3734–3749 (2014)
Liang, Z., Gimbutas, Z., Greengard, L., Huang, J., Jiang, S.: A fast multipole method for the Rotne-Prager-Yamakawa tensor and its applications. J. Comput. Phys. 234, 133–139 (2013)
Liberty, E., Woolfe, F., Martinsson, P.G., Rokhlin, V., Tygert, M.: Randomized algorithms for the low-rank approximation of matrices. Proc. Natl. Acad. Sci. U.S.A. 104(51), 20167–20172 (2007)
Makino, J.: Yet another fast multipole method without multipoles – Pseudoparticle multipole method. J. Comput. Phys. 151(2), 910–920 (1999)
Malhotra, D., Biros, G.: PVFMM: a parallel kernel independent FMM for particle and volume potentials. Commun. Comput. Phys. 18(3), 808–830 (2015)
Malhotra, D., Gholami, A., Biros, G.: A volume integral equation stokes solver for problems with variable coefficients. In: Proceedings of the 2014 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, pp. 1–11 (2014)
March, W.B., Xiao, B., Biros, G.: ASKIT: approximate skeletonization kernel-independent treecode in high dimensions. SIAM J. Sci. Comput. 37(2), A1089–A1110 (2015)
Martinsson, P.G.: The hierarchical Poincaré-Steklov (HPS) solver for elliptic PDEs: a tutorial. arXiv:1506.01308 (2015)
Martinsson, P.G., Rokhlin, V.: A fast direct solver for boundary integral equations in two dimensions. J. Comput. Phys. 205, 1–23 (2005)
Miranian, L., Gu, M.: Strong rank revealing LU factorizations. Linear Algebra Appl. 367, 1–16 (2003)
Ohno, Y., Yokota, R., Koyama, H., Morimoto, G., Hasegawa, A., Masumoto, G., Okimoto, N., Hirano, Y., Ibeid, H., Narumi, T., Taiji, M.: Petascale molecular dynamics simulation using the fast multipole method on k computer. Comput. Phys. Commun. 185, 2575–2585 (2014)
Oliveira, S., Yang F.: An algebraic approach for H-matrix preconditioners. Computing 80, 169–188 (2007)
Pan, C.T.: On the existence and computation of rank-revealing LU factorizations. Linear Algebra Appl. 316, 199–222 (2000)
Petersen, H.G., Soelvason, D., Perram, J.W., Smith, E.R.: The very fast multipole method. J. Chem. Phys. 101(10), 8870–8876 (1994)
Rahimian, A., Lashuk, I., Veerapaneni, K., Chandramowlishwaran, A., Malhotra, D., Moon, L., Sampath, R., Shringarpure, A., Vetter, J., Vuduc, R., Zorin, D., Biros, G.: Petascale direct numerical simulation of blood flow on 200k cores and heterogeneous architectures. In: Proceedings of the 2010 ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis, SC ’10 (2010)
Rouet, F.-H., Li, X.-S., Ghysels, P., Napov, A.: A distributed-memory package for dense hierarchically semi-separable matrix computations using randomization. arXiv:1503.05464 (2015)
Shao, Y., White, C.A., Head-Gordon, M.: Efficient evaluation of the Coulomb force in density-functional theory calculations. J. Chem. Phys. 114(15), 6572–6577 (2001)
Takahashi, T., Cecka, C., Fong, W., Darve, E.: Optimizing the multipole-to-local operator in the fast multipole method for graphical processing units. Int. J. Numer. Methods Eng. 89, 105–133 (2012)
Verde, A., Ghassemi, A.: Fast multipole displacement discontinuity method (FM-DDM) for geomechanics reservoir simulations. Int. J. Numer. Anal. Methods Geomech. 39(18), 1953–1974 (2015)
Wang, Y., Wang, Q., Deng, X., Xia, Z., Yan, J., Xu, H.: Graphics processing unit (GPU) accelerated fast multipole BEM with level-skip M2L for 3D elasticity problems. Adv. Eng. Softw. 82, 105–118 (2015)
White, C.A., Head-Gordon, M.: Rotating around the quartic angular momentum barrier in fast multipole method calculations. J. Chem. Phys. 105(12), 5061–5067 (1996)
Wilkes, D.R., Duncan, A.J.: A low frequency elastodynamic fast multipole boundary element method in three dimensions. Comput. Mech. 56, 829–848 (2015)
Willis, D., Peraire, J., White, J.: FastAero – a precorrected FFT-fast multipole tree steady and unsteady potential flow solver. http://hdl.handle.net/1721.1/7378 (2005)
Wolf, W.R., Lele, S.K.: Aeroacoustic integrals accelerated by fast multipole method. AIAA J. 49(7), 1466–1477 (2011)
Xia, J.: Randomized sparse direct solvers. SIAM J. Matrix Anal. Appl. 34(1), 197–227 (2013)
Xia, J.: O(N) complexity randomized 3D direct solver with HSS2D structure. In: Proceedings of the Project Review, Geo-Mathematical Imaging Group, Purdue University, pp. 317–325 (2014)
Xia, J., Chandrasekaran, S., Gu, M., Li, X.S.: Superfast multifrontal method for large structured linear systems of equations. SIAM J. Matrix Anal. Appl. 31(3), 1382–1411 (2009)
Xia, J., Chandrasekaran, S., Gu, M., Li, X.S.: Fast algorithms for hierarchically semiseperable matrices. Numer. Linear Algebra Appl. 17, 953–976 (2010)
Yarvin, N., Rokhlin, V.: An improved fast multipole algorithm for potential fields on the line. SIAM J. Numer. Anal. 36(2), 629–666 (1999)
Ying, L., Biros, G., Zorin, D.: A kernel-independent adaptive fast multipole algorithm in two and three dimensions. J. Comput. Phys. 196(2), 591–626 (2004)
Ying, L., Biros, G., Zorin, D.: A high-order 3D boundary integral equation solver for elliptic PDEs in smooth domains. J. Comput. Phys. 219, 247–275 (2006)
Yokota, R., Bardhan, J.P., Knepley, M.G., Barba, L.A., Hamada, T.: Biomolecular electrostatics using a fast multipole BEM on up to 512 GPUs and a billion unknowns. Comput. Phys. Commun. 182, 1272–1283 (2011)
Yokota, R., Narumi, T., Yasuoka, K., Barba, L.A.: Petascale turbulence simulation using a highly parallel fast multipole method on GPUs. Comput. Phys. Commun. 184, 445–455 (2013)
Yunis, E., Yokota, R., Ahmadia, A.: Scalable force directed graph layout algorithms using fast multipole methods. In: The 11th International Symposium on Parallel and Distributed Computing, Munich, June 2012
Zhao, Z., Kovvali, N., Lin, W., Ahn, C.-H., Couchman, L., Carin, L.: Volumetric fast multipole method for modeling Schrödinger’s equation. J. Comput. Phys. 224, 941–955 (2007)
Acknowledgements
We thank François-Henry Rouet, Pieter Ghysels, and Xiaoye, S. Li for providing the STRUMPACK interface for our comparisons between FMM and HSS. This work was supported by JSPS KAKENHI Grant-in-Aid for Research Activity Start-up Grant Number 15H06196. This publication was based on work supported in part by Award No KUK-C1-013-04, made by King Abdullah University of Science and Technology (KAUST). This work used the Extreme Science and Engineering Discovery Environment (XSEDE), which is supported by National Science Foundation grant number OCI-1053575.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Yokota, R., Ibeid, H., Keyes, D. (2017). Fast Multipole Method as a Matrix-Free Hierarchical Low-Rank Approximation. In: Sakurai, T., Zhang, SL., Imamura, T., Yamamoto, Y., Kuramashi, Y., Hoshi, T. (eds) Eigenvalue Problems: Algorithms, Software and Applications in Petascale Computing. EPASA 2015. Lecture Notes in Computational Science and Engineering, vol 117. Springer, Cham. https://doi.org/10.1007/978-3-319-62426-6_17
Download citation
DOI: https://doi.org/10.1007/978-3-319-62426-6_17
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-62424-2
Online ISBN: 978-3-319-62426-6
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)