14
257

ARock: an Algorithmic Framework for Asynchronous Parallel Coordinate Updates

Abstract

Finding a fixed point to a nonexpansive operator, i.e., x=Txx^*=Tx^*, abstracts many problems in numerical linear algebra, optimization, and other areas of scientific computing. To solve fixed-point problems, we propose ARock, an algorithmic framework in which multiple agents (machines, processors, or cores) update xx in an asynchronous parallel fashion. Asynchrony is crucial to parallel computing since it reduces synchronization wait, relaxes communication bottleneck, and thus speeds up computing significantly. At each step of ARock, an agent updates a randomly selected coordinate xix_i based on possibly out-of-date information on xx. The agents share xx through either global memory or communication. If writing xix_i is atomic, the agents can read and write xx without memory locks. Theoretically, we show that if the nonexpansive operator TT has a fixed point, then with probability one, ARock generates a sequence that converges to a fixed points of TT. Our conditions on TT and step sizes are weaker than comparable work. Linear convergence is also obtained. We propose special cases of ARock for linear systems, convex optimization, machine learning, as well as distributed and decentralized consensus problems. Numerical experiments of solving sparse logistic regression problems are presented.

View on arXiv
Comments on this paper