
- 456 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
About this book
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 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
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
Table of contents
- Copyright
- Brief Table of Contents
- Table of Contents
- Preface
- Acknowledgments
- About this Book
- Part 1. Foundations of OpenCL programming
- Chapter 1. Introducing OpenCL
- Chapter 2. Host programming: fundamental data structures
- Chapter 3. Host programming: data transfer and partitioning
- Chapter 4. Kernel programming: data types and device memory
- Chapter 5. Kernel programming: operators and functions
- Chapter 6. Image processing
- Chapter 7. Events, profiling, and synchronization
- Chapter 8. Development with C++
- Chapter 9. Development with Java and Python
- Chapter 10. General coding principles
- Part 2. Coding practical algorithms in OpenCL
- Chapter 11. Reduction and sorting
- Chapter 12. Matrices and QR decomposition
- Chapter 13. Sparse matrices
- Chapter 14. Signal processing and the fast Fourier transform
- Part 3. Accelerating OpenGL with OpenCL
- Chapter 15. Combining OpenCL and OpenGL
- Chapter 16. Textures and renderbuffers
- Appendix A. Installing and using a software development kit
- Appendix B. Real-time rendering with OpenGL
- Appendix C. The minimalist GNU for Windows and OpenCL
- Appendix D. OpenCL on mobile devices
- Index
- List of Figures
- List of Tables
- List of Listings