Publisher's Synopsis
Summary
OpenCL in Action is a thorough, hands-on presentation of OpenCL, with an eye toward showing developers how to build high-performance applications of their own. It begins by presenting the core concepts behind OpenCL, including vector computing, parallel programming, and multi-threaded operations, and then guides you step-by-step from simple data structures to complex functions.
About the TechnologyWhatever system you have, it probably has more raw processing power than you're using. OpenCL is a high-performance programming language that maximizes computational power by executing on CPUs, graphics processors, and other number-crunching devices. It's perfect for speed-sensitive tasks like vector computing, matrix operations, and graphics acceleration.
About this BookOpenCL in Action blends the theory of parallel computing with the practical reality of building high-performance applications using OpenCL. It first guides you through the fundamental data structures in an intuitive manner. Then, it explains techniques for high-speed sorting, image processing, matrix operations, and fast Fourier transform. The book concludes with a deep look at the all-important subject of graphics acceleration. Numerous challenging examples give you different ways to experiment with working code.
A background in C or C++ is helpful, but no prior exposure to OpenCL is needed.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
What's Inside- Learn OpenCL step by step
- Tons of annotated code
- Tested algorithms for maximum performance
***********
Table of Contents- Introducing OpenCL
- Host programming: fundamental data structures
- Host programming: data transfer and partitioning
- Kernel programming: data types and device memory
- Kernel programming: operators and functions
- Image processing
- Events, profiling, and synchronization
- Development with C++
- Development with Java and Python
- General coding principles
- Reduction and sorting
- Matrices and QR decomposition
- Sparse matrices
- Signal processing and the fast Fourier transform
- Combining OpenCL and OpenGL
- Textures and renderbuffers