Author/s : Jason Sanders, Edward Kandrot
Publisher : Addison-Wesley Professional
Category : Other Review by : Jesper Young
Rating : 9 horseshoes
This book is about GPGPU programming - how to write parallel programs for your video card using NVIDIA's CUDA toolkit. Prerequisites for working with this book are an NVIDIA graphics card, a computer running Windows or Linux (you can also use Mac OS X but the book warns that this is not officially supported) and knowledge of C++ (note, although the book talks about C, the code is really C++).
The book has a good structure - it starts with two short introductory chapters and then starts with easy and simple examples, introducing more and more advanced topics in the later chapters. Some of the examples are not that interesting, but are good for explaining the basics (summing arrays of numbers, for example), but the book also contains a number of more interesting and impressive examples, such as generating Julia fractals and a very basic ray tracer.
I found the book clear and easy to read, and a good introduction to GPGPU programming with CUDA. Although the book does not go into the details of more advanced topics, it contains more than enough material to keep you busy learning and playing with CUDA for some time. For the more advanced topics, such as debugging and profiling CUDA programs and several toolkits and libraries that use CUDA, the book contains an overview and pointers to where you can find more information.
A good book with a clear structure, and a good progression from easy to more advanced topics - recommended if you want to know more about programming your NVIDIA card.
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.