Proof of Correctness for Sparse Tiling of Gauss-Seidel
Gauss-Seidel is an iterative computation used for solving sets of simulataneous linear equations, $Au=f$. When these unknowns are associated with nodes in an irregular mesh, then the Gauss-Seidel computation structure is related to the mesh structure. We use this structure to subdivide the computation at runtime using a technique called {\em sparse tiling}. The rescheduled computation exhibits better data locality and therefore improved performance. This paper gives a complete proof that a serial schedule based on sparse tiling generates results equivalent to those that a standard Gauss-Seidel computation produces.