Designing scientific applications on GPUs This book covers designs of scientific applications for GPUs beginning with a review of the principles of GPU programming. It then describes various scientific applications for GPUs and presents lessons learned. Scientific applications covered include computations on matrix operations linear system solving nonlinear system solving image processing and pseudo random number generation. Expert contributors discuss applications and the GPU porting in a pedagogical way focusing their attention on the mechanisms they have used to obtain fast and interesting results