Cache-aware Multigrid Methods for Solving Poisson's Equation in Two Dimensions

Weiß C, Kowarschik M, Rüde U, Wolfgang K (2000)


Publication Type: Journal article

Publication year: 2000

Journal

Publisher: Springer Verlag (Germany)

Book Volume: 64

Pages Range: 381-399

Journal Issue: 4

URI: http://link.springer.com/content/pdf/10.1007/s006070070032.pdf

Abstract

Conventional implementations of iterative numerical algorithms, especially multigrid methods, merely reach a disappointing small percentage of the theoretically available CPU performance when applied to representative large problems. One of the most important reasons for this phenomenon is that the need for data locality due to poor main memory latency and limited bandwidth is entirely neglected by many developers designing numerical software. Only when most of the data to be accessed during the computation arc found in the system cache (or in one of the caches if the machine architecture comprises a cache hierarchy) fast program execution can be expected. Otherwise, i.e. in case of a significant rate of cache misses, the processor must stay idle until the necessary operands are fetched from main memory, whose cycle time is in general extremely large compared to the time needed to execute a floating point instruction. In this paper, we describe program transformation techniques developed to improve the cache performance of two-dimensional multigrid algorithms. Although we merely consider the solution of Poisson's equation on the unit square using structured grids, our techniques provide valuable hints towards the efficient treatment of more general problems.

Authors with CRIS profile

Related research project(s)

How to cite

APA:

Weiß, C., Kowarschik, M., Rüde, U., & Wolfgang, K. (2000). Cache-aware Multigrid Methods for Solving Poisson's Equation in Two Dimensions. Computing, 64(4), 381-399.

MLA:

Weiß, Christian, et al. "Cache-aware Multigrid Methods for Solving Poisson's Equation in Two Dimensions." Computing 64.4 (2000): 381-399.

BibTeX: Download