A cache-oblivious self-adaptive full multigrid method

M. Mehl, T. Weinzierl, Chr Zenger

Research output: Contribution to journalArticlepeer-review

23 Scopus citations

Abstract

This paper presents a new efficient way to implement multigrid algorithms on adaptively refined grids. To cope with todays demands in high-performance computing, we cannot do without such highly sophisticated numerical methods. But if we do not implement them very carefully, we lose a lot of efficiency in terms of memory usage: using trees for the storage of hierarchical multilevel data causes a large amount of non-local (in terms of the physical memory space) data accesses, and often requires the storage of pointers to neighbours to allow the evaluation of discrete operators (difference stencils, restrictions, interpolations, etc.). The importance of this problem becomes clear if we remember that storage and not the CPUs is the bottleneck on modern computers. We established a cache-oblivious and storage-minimizing algorithm based on the concept of space-tree grids combined with a cell-oriented operator evaluation, a linear ordering of grid cells along a space-filling curve, and a sophisticated construction of linearly processed data structures for vertex data. In this context, we could show that the implementation of a dynamically adaptive F-cycle is, first, very natural and, second, does not cause any overhead in terms of storage usage and access as adaptivity and multilevel data do not disturb the linear processing order of our data structures.

Original languageEnglish
Pages (from-to)275-291
Number of pages17
JournalNumerical Linear Algebra with Applications
Volume13
Issue number2-3
DOIs
StatePublished - Mar 2006

Keywords

  • Cache-efficiency
  • Dynamical adaptivity
  • Multigrid
  • Space-filling curve
  • Space-tree

Fingerprint

Dive into the research topics of 'A cache-oblivious self-adaptive full multigrid method'. Together they form a unique fingerprint.

Cite this