Cache-Optimal Data-Structures for Hierarchical Methods on Adaptively Refined Space-Partitioning Grids

  • Miriam Mehl
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4208)


The most efficient numerical methods for the solution of partial differential equations, multigrid methods on adaptively refined grids, imply several drawbacks from the point of view of memory-efficiency on high-performance computer architectures: First, we loose the trivial structure expressed by the simple i,j-indexing of grid points or cells. This effect is even worsened by the usage of hierarchical data and – if implemented in a naive way – leads to both increased storage requirements (neighbourhoodrelations possibly modified difference stencils) and a less efficient data access (worse locality of data and additional data dependencies), in addition. Our approach to overcome this quandary between numerical and hardware-efficiency relies on structured but still highly flexible adaptive grids, the so-called space-partitioning grids, cell-oriented operator evaluations, and the construction of very efficient data structures based on the concept of space-filling curves. The focus of this paper is in particular on the technical and algorithmical details concerning the interplay between data structures, space-partitioning grids and space-filling curves.


Multigrid Method Adaptive Grid Hierarchical Method Multigrid Solver Peano Curve 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Mehl, M., Weinzierl, T., Zenger, C.: A cache-oblivious self-adaptive full multigrid method. In: Special issue Copper Mountain Conference on Multigrid Methods, Numerical Linear Algebra with Applications. Wiley Interscience, Hoboken (to appear, 2005)Google Scholar
  2. 2.
    Neckel, T.: Einfache 2D-Fluid-Struktur-Wechselwirkungen mit einer cache-optimalen Finite-Element-Methode. Diploma thesis, Institut für Informatik, Technische Universität München (2005)Google Scholar
  3. 3.
    Weinzierl, T.: Eine cache-optimale Implementierung eines Navier-Stokes Lösers unter besonderer Berücksichtigung physikalischer Erhaltungssätze. Diploma thesis, Institut für Informatik, Technische Universität München (2005)Google Scholar
  4. 4.
    Brenk, M., Bungartz, H.-J., Mehl, M., Neckel, T.: Fluid-Structure Interaction on Cartesian Grids: Flow Simulation and Coupling Interface. In: Bungartz, Schfer (eds.) Fluid-Structure Interaction: Modelling, Simulation, Optimisation. LNCSE series. Springer, Heidelberg (to appear)Google Scholar
  5. 5.
    Braess, D.: Finite Elements. Theory, Fast Solvers and Applications in Solid Mechanics. Cambridge University Press, Cambridge (2001)MATHGoogle Scholar
  6. 6.
    Dieminger, N.: Kriterien für die Selbstadaption cache-effizienter Mehrgitteralgorithmen. Diplomarbeit, Institut für Informatik, Technische Universität München (2005)Google Scholar
  7. 7.
    Griebel, M., Zumbusch, G.: Hash based adaptive parallel multilevel methods with space-filling curves. In: Rollnik, Wolf (eds.) NIC Series, vol. 9, pp. 479–492 (2002)Google Scholar
  8. 8.
    Patra, A.K., Long, J., Laszloff, A.: Efficient Parallel Adaptive Finite Element Methods Using Self-Scheduling Data and Computations. In: Banerjee, P., Prasanna, V.K., Sinha, B.P. (eds.) HiPC 1999. LNCS, vol. 1745, pp. 359–363. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  9. 9.
    Roberts, S., Klyanasundaram, S., Cardew-Hall, M., Clarke, W.: A key based parallel adaptive refinement technique for finite element methods. In: Noye, Teubner, Gill (eds.) Proceedings Computational Techniques and Applications: CTAC 1997, pp. 577–584. World Scientific, Singapore (1998)Google Scholar
  10. 10.
    Zumbusch, G.W.: Adaptive Parallel Multilevel Methods for Partial Differential Equations. Habilitationsschrift, Universität Bonn (2001)Google Scholar
  11. 11.
    Sagan, H.: Space-Filling Curves. Springer, New York (1994)MATHGoogle Scholar
  12. 12.
    Aftosmis, M.J., Berger, M.J., Adomavivius, G.: A Parallel Multilevel Method for Adaptively Refined Cartesian Grids with Embedded Boundaries, American Institute of Aeronautics and Astronautics-2000-808, Aerospace Science Meeting and Exhibit, 38th, Reno, Nevada, January 10-13 (2000)Google Scholar
  13. 13.
    Pögl, M.: Entwicklung eines cache-optimalen 3D Finite-Element-Verfahrens für große Probleme. Doctoral thesis, Institut für Informatik, TU München (2004)Google Scholar
  14. 14.
    Krahnke, A.: Adaptive Verfahren höherer Ordnung auf cache-optimalen Datenstrukturen für dreidimensionale Probleme. Doctoral thesis, Institut für Informatik, TU München (2005)Google Scholar
  15. 15.
    Günther, F.: Eine cache-optimale Implementierung der Finite-Elemente-Methode. Doctoral thesis, Institut für Informatik, TU München (2004)Google Scholar
  16. 16.
    Günther, F., Mehl, M., Pögl, M., Zenger, C.: A cache-aware algorithm for PDEs on hierarchical data structures based on space-filling curves. SIAM Journal on Scientific Computing (in review)Google Scholar
  17. 17.
    Langlotz, M.: Parallelisierung eines Cache-optimalen 3D Finite-Element-Verfahrens. Diplomarbeit, Institut für Informatik, TU München (2004)Google Scholar
  18. 18.
    Herder, W.: Lastverteilung und parallelisierte Erzeugung von Eingabedaten für ein paralleles Cache-optimales Finite-Element-Verfahren. Diplomarbeit, Institut für Informatik, TU München (2005)Google Scholar
  19. 19.
    Günther, F., Krahnke, A., Langlotz, M., Mehl, M., Pögl, M., Zenger, C.: On the Parallelization of a Cache-Optimal Iterative Solver for PDEs Based on Hierarchical Data Structures and Space-Filling Curves. In: Kranzlmüller, D., Kacsuk, P., Dongarra, J. (eds.) EuroPVM/MPI 2004. LNCS, vol. 3241, pp. 425–429. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  20. 20.
    Seward, J., Nethercote, N., Fitzhardinge, J.: Cachegrind: a cache-miss profiler,
  21. 21.
    HP invent. perfmon: create powerful performance analysis tools wich use the IA-54 Performance Monitoring Unit (PMU),
  22. 22.
    Frigo, M., Leierson, C.E., Prokop, H., Ramchandran, S.: Cache-oblivious algorithms. In: Proceedings of the 40th Annual Sympoisium on Foundations of Computer Science, New York, pp. 285–297 (1999)Google Scholar
  23. 23.
    Demaine, E.D.: Cache-Oblivious Algorithms and Data Structures. In: Lecture Notes from the EEF Summer School on Massive Data Sets, University of Aarhus, Denmark, June 27-July 1. LNCS. Springer, Heidelberg (2002)Google Scholar
  24. 24.
    Kowarschik, M., Weiß, C.: DiMEPACK – A Cache-Optimal Multigrid Library. In: Arabnia (ed.) Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Application (PDPTA 2001), Las Vegas, USA vol. I (2001)Google Scholar
  25. 25.
    Langlotz, M., Mehl, M., Weinzierl, T., Zenger, C.: SkvG: Cache-Optimal Parallel Solution of PDEs on High Performance Computers Using Space-Trees and Space-Filling Curves. In: Bode, A., Durst, F. (eds.) High Performance Computing in Science and Engineering, Garching 2004, pp. 71–82. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  26. 26.
    Douglas, C.C., Hu, J., Kowarschik, M., Rüde, U., Weiß, C.: Cache Optimization for Structured and Unstructured Grid Multigrid. Electronic Transactions on Numerical Analysis 10, 21–40 (2000)MATHMathSciNetGoogle Scholar
  27. 27.
    Kowarschik, M., Weiß, C.: An Overview of Cache Optimization Techniques and Cache-Aware Numerical Algorithms. In: Meyer, U., Sanders, P., Sibeyn, J.F. (eds.) Algorithms for Memory Hierarchies. LNCS, vol. 2625, pp. 213–232. Springer, Heidelberg (2003)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Miriam Mehl
    • 1
  1. 1.Institut für InformatikTU MünchenGarchingGermany

Personalised recommendations