Must linear algebra be block cyclic? : and other explorations into the expressivity of data parallel and task parallel languages
Author(s)Sundaresh, Harish Peruvamba
Massachusetts Institute of Technology. Computation for Design and Optimization Program.
MetadataShow full item record
Prevailing Parallel Linear Algebra software block cyclically distributes data across its processors for good load balancing and communication between its nodes. The block cyclic distribution schema characterized by cyclic order allocation of row and column data blocks followed by consecutive elimination is widely used in scientific computing and is the default approach in ScaLA-PACK. The fact that we are not familiar with any software outside of linear algebra that has considered cyclic distributions for their execution presents incompatibility. This calls for possible change in approach as advanced computing platforms like Star-P are emerging allowing for interoperability of algorithms. This work demonstrates a data parallel column block cyclic elimination technique for LU and QR factorization. This technique yields good load balance and communication between nodes, and also eliminates superfluous overheads. The algorithms are implemented with consecutive allocation and cyclic elimination using the high level platform, Star-P. Block update tenders extensive performance enhancement making use of Basic Linear Algebra Subroutine-3 for delivering tremendous speedup. This project also provides an overview of threading in parallel systems through implementation of important task parallel algorithms: prefix, hexadecimal Pi digits and Monte-Carlo simulation.
Thesis (S.M.)--Massachusetts Institute of Technology, Computation for Design and Optimization Program, 2007.Includes bibliographical references (leaves 68-69).
DepartmentMassachusetts Institute of Technology. Computation for Design and Optimization Program.
Massachusetts Institute of Technology
Computation for Design and Optimization Program.