Performance Gains in Conjugate Gradient Computation With Linearly Connected GPU Multiprocessors
Conjugate gradient is an important iterative method used for solving least squares problems. It is compute-bound and generally involves only simple matrix computations. One would expect that the authors could fully parallelize such computation on the GPU architecture with multiple Stream Multiprocessors (SMs), each consisting of many SIMD processing units. While implementing a conjugate gradient method for compressive sensing signal reconstruction, they have noticed that large speed-up due to parallel processing is actually infeasible due to the high I/O cost between SMs and GPU global memory.