@inproceedings{qian2012madlinq, author = {Qian, Zhengping and Chen, Xiuwei and Kang, Nanxi and Chen, Mingcheng and Yu, Yuan and Moscibroda, Thomas and Zhang, Zheng}, title = {MadLINQ: Large-Scale Distributed Matrix Computation for the Cloud}, booktitle = {EuroSys 2012: 7th ACM European Conference on Computer Systems, Berne, Switzerland}, year = {2012}, month = {April}, abstract = {The computation core of many data-intensive applications can be best expressed as matrix computations. The MadLINQ project addresses the following two important research problems: the need for a highly scalable, efficient and fault-tolerant matrix computation system that is also easy to program, and the seamless integration of such specialized execution engines in a general purpose data-parallel computing system. MadLINQ exposes a unified programming model to both matrix algorithm and application developers. Matrix algorithms are expressed as sequential programs operating on tiles (i.e., sub-matrices). For application developers, MadLINQ provides a distributed matrix computation library for .NET languages. Via the LINQ technology, MadLINQ also seamlessly integrates with DryadLINQ, a data-parallel computing system focusing on relational algebra. The system automatically handles the parallelization and distributed execution of programs on a large cluster. It outperforms current state-of-the-art systems by employing two key techniques, both of which are enabled by the matrix abstraction: exploiting extra parallelism using fine-grained pipelining and efficient on-demand failure recovery using a distributed fault-tolerant execution engine. We describe the design and implementation of MadLINQ and evaluate system performance using several real-world applications.}, publisher = {ACM}, url = {http://approjects.co.za/?big=en-us/research/publication/madlinq-large-scale-distributed-matrix-computation-for-the-cloud/}, edition = {EuroSys 2012: 7th ACM European Conference on Computer Systems, Berne, Switzerland}, note = {EuroSys Best Paper Award}, }