Implementation of a linear programming solver on the Cell BE processor

Abstract We describe an implementation of a parallel linear programming solver on the Cell BE processor. This implementation is based on GLPK C routines which solve LP problems using a serial implementation of one of the interior point methods. We have identified the computational kernels of the serial version and decided to implement a parallel version of Cholesky factorization and integrate it into GLPK. Our decision stemmed from the fact that Cholesky factorization is the most computationally expensive kernel that has the most potential to parallelize efficiently on the Cell BE processor. Compared to the execution time of serial GLPK on the Cell Power Processing Element (PPE), we were able to obtain a speedup of up to 7 when solving some of the large size Netlib problems on Sony’s PlayStation 3.

[1]  Matthew Scarpino,et al.  Programming the Cell Processor: For Games, Graphics, and Computation , 2008 .

[2]  David G. Luenberger,et al.  Linear and nonlinear programming , 1984 .

[3]  Sanjay Mehrotra,et al.  On the Implementation of a Primal-Dual Interior Point Method , 1992, SIAM J. Optim..

[4]  H. Peter Hofstee,et al.  Introduction to the Cell multiprocessor , 2005, IBM J. Res. Dev..

[5]  Volodymyr Kindratenko,et al.  Implementation of scientific computing applications on the Cell Broadband Engine , 2009, HiPC 2009.

[6]  Anoop Gupta,et al.  An Efficient Block-Oriented Approach to Parallel Sparse Cholesky Factorization , 1994, SIAM J. Sci. Comput..

[7]  Michael T. Heath,et al.  Parallel Direct Methods for Sparse Linear Systems , 1997 .

[8]  Anne C. Elster,et al.  Linear optimization on modern GPUs , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[9]  Samuel Williams,et al.  The potential of the cell processor for scientific computing , 2005, CF '06.

[10]  Roger Grimes,et al.  The influence of relaxed supernode partitions on the multifrontal method , 1989, TOMS.

[11]  Jack Dongarra,et al.  SCOP3: A Rough Guide to Scientific Computing On the PlayStation 3 , 2007 .

[12]  C. Mészáros The cholesky factorization in interior point methods , 2005 .

[13]  Jack J. Dongarra,et al.  Solving Systems of Linear Equations on the CELL Processor Using Cholesky Factorization , 2008, IEEE Transactions on Parallel and Distributed Systems.

[14]  Pradeep Dubey,et al.  Scaling performance of interior-point method on large-scale chip multiprocessor system , 2007, Proceedings of the 2007 ACM/IEEE Conference on Supercomputing (SC '07).

[15]  Sivan Toledo,et al.  Locality of reference in sparse Cholesky factorization methods. , 2005 .

[16]  P. Stanimirović,et al.  Augmented and Normal Equations System in Mehrotra's Primal-dual Algorithm , 2001 .

[17]  Dianne P. O'Leary,et al.  IMPLEMENTING AN INTERIOR POINT METHOD FOR LINEAR PROGRAMS ON A CPU-GPU SYSTEM , 2010 .

[18]  Volodymyr V. Kindratenko,et al.  Implementation of scientific computing applications on the Cell Broadband Engine , 2009, Sci. Program..