Tiling is well-known to reduce the number of cache misses in linear relaxation codes. This paper investigates analyti-cally how close to optimum the improvement gets. We con-sider one time step of the Jacobi and Gauss-Seidel methods on a two-dimensional array of size (N +2) (N +2). For cache capacity C and line size L, we prove that at least 0:6N2=(LC) capacity misses are taken, independent on the schedule of operations in the program. Furthermore, we show that tiled codes are off this bound by a factor of 4L. Finally, we reduce the factor to 7 with a sophisticated data layout scheme
Abstract. This paper presents essentially optimal lower bounds on the size of linear codes C: {0, 1}...
Since the introduction of cache memories in computer architecture, techniques to improve the data lo...
Iteration space tiling is a common strategy used by parallelizing compilers and in performance tunin...
Tiling is a well-known loop transformation technique to enhance temporal data locality. In our previ...
The effectiveness of the memory hierarchy is critical for the performance of current processors. The...
Efficient memory allocation is crucial for data-intensive applications, as a smaller memory footprin...
Application codes reliably achieve performance far less than the advertised capabilities of existing...
Gauss-Seidel is an iterative computation used for solving a set of simultaneous linear equations, $A...
Consider a linear [n, k, d]q code C. We say that that i-th coordinate of C has locality r, if the va...
Iteration space tiling is a common strategy used by parallelizing compilers to reduce communication ...
Motivated by applications to distributed storage, Gopalan et al recently introduced the interesting ...
Loop tiling is an effective optimizing transformation to boost the memory performance of a program, ...
Abstract. In this paper, we introduce a novel approach to guide tile size se-lection by employing an...
An n-length block code C is said to be r-query locally correctable, if for any codeword x ∈ C, one c...
Caches have become increasingly important with the widening gap between main memory and processor sp...
Abstract. This paper presents essentially optimal lower bounds on the size of linear codes C: {0, 1}...
Since the introduction of cache memories in computer architecture, techniques to improve the data lo...
Iteration space tiling is a common strategy used by parallelizing compilers and in performance tunin...
Tiling is a well-known loop transformation technique to enhance temporal data locality. In our previ...
The effectiveness of the memory hierarchy is critical for the performance of current processors. The...
Efficient memory allocation is crucial for data-intensive applications, as a smaller memory footprin...
Application codes reliably achieve performance far less than the advertised capabilities of existing...
Gauss-Seidel is an iterative computation used for solving a set of simultaneous linear equations, $A...
Consider a linear [n, k, d]q code C. We say that that i-th coordinate of C has locality r, if the va...
Iteration space tiling is a common strategy used by parallelizing compilers to reduce communication ...
Motivated by applications to distributed storage, Gopalan et al recently introduced the interesting ...
Loop tiling is an effective optimizing transformation to boost the memory performance of a program, ...
Abstract. In this paper, we introduce a novel approach to guide tile size se-lection by employing an...
An n-length block code C is said to be r-query locally correctable, if for any codeword x ∈ C, one c...
Caches have become increasingly important with the widening gap between main memory and processor sp...
Abstract. This paper presents essentially optimal lower bounds on the size of linear codes C: {0, 1}...
Since the introduction of cache memories in computer architecture, techniques to improve the data lo...
Iteration space tiling is a common strategy used by parallelizing compilers and in performance tunin...