Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Accelerating MATLAB with GPU computing : a primer with examples
Suh J., Kim Y., Morgan Kaufmann Publishers Inc., San Francisco, CA, 2014. 258 pp. Type: Book (978-0-124080-80-5)
Date Reviewed: Jul 2 2014

MATLAB is one of the top choices for rapid prototyping, where high performance is usually not a crucial issue. Nevertheless, it is surely very desirable to improve the efficiency of a MATLAB simulation engine by properly exploiting the underlying hardware. This is particularly important now that this hardware is not necessarily located in a distant computing center, but is instead inside of a desktop computer.

MATLAB was, in the 1990s, a late adopter of parallel computing. Since then, its support for it has changed significantly. This is clearly reflected by the efforts devoted to its parallel computing toolbox. One of the recent additions to this toolbox is the support to accelerate MATLAB applications on graphics boards.

This book assumes very little experience in programming. It clearly exhibits, in a basic way, how a naive programmer may speed up MATLAB simulations significantly by using graphics boards and CUDA.

Eight chapters are included in the book. The first three are preparatory, and present the following topics in great detail: basic and generic practices to accelerate the execution of a program; an introduction to c-mex programming and certain details on configuring CUDA on MATLAB; and issues concerning profiling for CUDA.

The core of the book is in the next three chapters, which contain introductions to: CUDA programming through c-mex; related issues from MATLAB’s parallel computing toolbox; and usage of CUDA accelerated basic linear algebra subprograms (BLAS), fast Fourier transforms (FFTs), and standard template libraries (STL).

The last two chapters include two case studies from computer graphics and image processing.

This truly is a practical primer. It is well written and delivers what it promises. Its main contribution is that it will assist “naive” programmers in advancing their code optimization capabilities for graphics processing units (GPUs) without any agonizing pain. It will also expose them to CUDA GPU programming in a gentle and perhaps interesting way. It will even help them to accelerate the execution of some of their programs by an unexpectedly huge factor. However, it is difficult to judge how the approach adopted and the material contained in this book compare to the various related materials available on MATLAB’s site and beyond.

Finally, there are two minor issues. First, I am not convinced by the statements concerning the coverage of OpenCL given in the introduction. Second, in a future edition, I would love to see a couple of programming assignments at the end of each chapter.

More reviews about this item: Amazon

Reviewer:  E. Vavalis Review #: CR142462 (1410-0841)
Bookmark and Share
 
Graphics Processors (I.3.1 ... )
 
 
Matlab (G.4 ... )
 
 
Performance of Systems (C.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Graphics Processors": Date
Introduction to volume rendering
Lichtenbelt B., Crane R., Naqvi S., Prentice-Hall, Inc., Upper Saddle River, NJ, 1998. Type: Book (9780138616830)
May 1 1999
Time/space tradeoffs for polygon mesh rendering
Bar-Yehuda R., Gotsman C. ACM Transactions on Graphics (TOG) 15(2): 141-152, 1996. Type: Article
Jul 1 1997
A programmable vertex shader with fixed-point SIMD datapath for low power wireless applications
Sohn J., Woo R., Yoo H.  Graphics hardware (Proceedings of the ACM SIGGRAPH/EUROGRAPHICS Conference on Graphics Hardware, Grenoble, France, Aug 29-30, 2004)107-114, 2004. Type: Proceedings
Jul 8 2005
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy