Algorithms have two costs: arithmetic and communication, i.e. moving data between levels of a memory hierarchy or processors over a network. Communication costs (measured in time or energy per operation) already greatly exceed arithmetic costs, and the gap is growing over time following technological trends. Thus, our goal is to design algorithms that minimize communication.
In this talk, Demmel presents algorithms that attain provable lower bounds on communication and show large speed-ups compared to their conventional counterparts. These algorithms include direct and iterative linear algebra (for dense and sparse matrices), direct n-body simulations, and some machine learning algorithms. Several of these algorithms exhibit perfect strong scaling, in both time and energy: run time (resp. energy) for a fixed problem size drops proportionally to the number of processors p (resp. is independent of p).
In some emerging memory technologies, writes can be much more expensive than reads, so Demmel will also discuss write-avoiding algorithms, which can do asymptotically fewer writes than reads. Finally, Demmel shows how to generalize our approach to algorithms involving arbitrary loop nests and array accesses, assuming only that array subscripts are affine functions of the loop indices.
James Demmel is the chair of the Computer Science Division and the Dr. Richard Carl Dehmel Distinguished Professor of Computer Science and Mathematics at the University of California at Berkeley. His research interests are in numerical linear algebra, high-performance computing, and communication avoiding algorithms in particular. He is known for his work on the LAPACK and ScaLAPACK linear algebra libraries.
Demmel is a member of the National Academy of Sciences, National Academy of Engineering, a Fellow of the AAAS, ACM, AMS, IEEE and SIAM. He has won multiple awards, including the IPDPS Charles Babbage Award, IEEE Computer Society Sidney Fernbach Award, the ACM Paris Kanellakis Award, and numerous best paper prizes.