Abstract
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.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
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)
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)
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)
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)
Braess, D.: Finite Elements. Theory, Fast Solvers and Applications in Solid Mechanics. Cambridge University Press, Cambridge (2001)
Dieminger, N.: Kriterien für die Selbstadaption cache-effizienter Mehrgitteralgorithmen. Diplomarbeit, Institut für Informatik, Technische Universität München (2005)
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)
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)
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)
Zumbusch, G.W.: Adaptive Parallel Multilevel Methods for Partial Differential Equations. Habilitationsschrift, Universität Bonn (2001)
Sagan, H.: Space-Filling Curves. Springer, New York (1994)
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)
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)
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)
Günther, F.: Eine cache-optimale Implementierung der Finite-Elemente-Methode. Doctoral thesis, Institut für Informatik, TU München (2004)
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)
Langlotz, M.: Parallelisierung eines Cache-optimalen 3D Finite-Element-Verfahrens. Diplomarbeit, Institut für Informatik, TU München (2004)
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)
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)
Seward, J., Nethercote, N., Fitzhardinge, J.: Cachegrind: a cache-miss profiler, http://valgrind.kde.org/docs.html
HP invent. perfmon: create powerful performance analysis tools wich use the IA-54 Performance Monitoring Unit (PMU), http://www.hpl.hp.com/research/linux/perfmon/index.php4
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)
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)
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)
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)
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)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mehl, M. (2006). Cache-Optimal Data-Structures for Hierarchical Methods on Adaptively Refined Space-Partitioning Grids. In: Gerndt, M., Kranzlmüller, D. (eds) High Performance Computing and Communications. HPCC 2006. Lecture Notes in Computer Science, vol 4208. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11847366_15
Download citation
DOI: https://doi.org/10.1007/11847366_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-39368-9
Online ISBN: 978-3-540-39372-6
eBook Packages: Computer ScienceComputer Science (R0)