This site contains GPU codes for compressed sensing and image denoising/deblurring:

All GPU codes compile into Matlab mex binaries, so users can process data and pass them to our GPU routines in Matlab.
Our GPU codes require CUDA-enabled GPUs from NVIDIA. See CUDA installation guide for details.


Paper and Software

Note: some files have to be copied from CUDA packages to build our software. Please see README file in our software for details. We will include the necessary CUDA files in future distributions.


This research was supported by National Science Foundation Grants CCF-0430504 and CNS-0540147. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

The GPUs used in this research are provided by NVIDIA under the Professor Partnership Program.


[1] S. J. Wright, R. D. Nowak, and M. A. T. Figueiredo, "Sparse reconstruction by separable approximation", in Proceedings of the International Conference on Acoustics, Speech, and Signal Processing, October 2008.

[2] M. Zhu and T. F. Chan, "An efficient primal-dual hybrid gradient algorithm for total variation image restoration", CAM Report 08-34, Mathematics Department, UCLA, May 2008.