Synopses & Reviews
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 Technology
Whatever 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 Book
OpenCL 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
PART 1 FOUNDATIONS OF OPENCL PROGRAMMING
- 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
PART 2 CODING PRACTICAL ALGORITHMS IN OPENCL
- Reduction and sorting
- Matrices and QR decomposition
- Sparse matrices
- Signal processing and the fast Fourier transform
PART 3 ACCELERATING OPENGL WITH OPENCL
- Combining OpenCL and OpenGL
- Textures and renderbuffers
OpenCL (Open Computing Language) helps developers build high-performance applications by providing a single programming framework to build programs that execute on today's high-speed devices. Based on C and C++, it's a perfect tool to build number-crunching applications for graphics cards and multi-core processors.
OpenCL in Action provides 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. It explains the fundamental data structures of OpenCL in an intuitive manner, proceeding from the simple to the complex. Practical coding guidance is presented throughout, with loads of valuable techniques and code examples included.
About the Author
Matthew Scarpino is a software consultant with over twelve years of experience in engineering and software development, and has developed high-performance applications using digital signal processors, field programmable gate arrays, and the Cell Broadband Engine. He's the author of Programming the Cell Processor: For Games, Graphics, and Numerical Computation.