Breaking Locality Accelerates Block Gauss-Seidel
نویسندگان
چکیده
Recent work by Nesterov and Stich (2016) showed that momentum can be used to accelerate the rate of convergence for block GaussSeidel in the setting where a fixed partitioning of the coordinates is chosen ahead of time. We show that this setting is too restrictive, constructing instances where breaking locality by running non-accelerated Gauss-Seidel with randomly sampled coordinates substantially outperforms accelerated Gauss-Seidel with any fixed partitioning. Motivated by this finding, we analyze the accelerated block Gauss-Seidel algorithm in the random coordinate sampling setting. Our analysis captures the benefit of acceleration with a new data-dependent parameter which is well behaved when the matrix subblocks are well-conditioned. Empirically, we show that accelerated Gauss-Seidel with random coordinate sampling provides speedups for large scale machine learning tasks when compared to non-accelerated Gauss-Seidel and the classical conjugate-gradient algorithm.
منابع مشابه
Using Sparse Tiling with Symmetric Multigrid
Good data locality is an important aspect of obtaining scalable performance for multigrid methods. However, locality can be difficult to achieve, especially when working with unstructured grids and sparse matrices whose structure is not known until runtime. Our previous work developed full sparse tiling, a runtime reordering and rescheduling technique for improving locality. We applied full spa...
متن کاملCombining Performance Aspects of Irregular Gauss-Seidel Via Sparse Tiling
Finite Element problems are often solved using multigrid techniques. The most time consuming part of multigrid is the iterative smoother, such as Gauss-Seidel. To improve performance, iterative smoothers can exploit parallelism, intra-iteration data reuse, and inter-iteration data reuse. Current methods for parallelizing Gauss-Seidel on irregular grids, such as multi-coloring and ownercomputes ...
متن کاملProof of Correctness for Sparse Tiling of Gauss-Seidel
Gauss-Seidel is an iterative computation used for solving a set of simultaneous linear equations, A~u = ~ f . If the matrix A uses a sparse matrix representation, storing only nonzeros, then the data dependences in the computation arise from A’s nonzero structure. We use this structure to schedule the computation at runtime using a technique called full sparse tiling. The sparse tiled computati...
متن کاملPreconditioners for Linearized Discrete Compressible Euler Equations
We consider a Newton-Krylov approach for discretized compressible Euler equations. A good preconditioner in the Krylov subspace method is essential for obtaining an efficient solver in such an approach. In this paper we compare point-block-Gauss-Seidel, point-block-ILU and point-block-SPAI preconditioners. It turns out that the SPAI method is not satisfactory for our problem class. The point-bl...
متن کاملICCS 2001 talk: Rescheduling for Locality in Sparse Matrix Computations
Multigrid solves a set of simultaneous linear equations optimally. That is the time and space used by the multigrid computation are proportional to N , the number of unknowns. In reality the performance of any computation is not just dictated by how many operations performed. The order of the operations and the layout of data in memory determine how well levels of cache in the target architectu...
متن کامل