In the section on thread synchronization, I briefly described how a GPU does its work. The programming of GPUs for graphic usage is often done in OpenGL. Programming GPUs for more general math problems is done in CUDA. If you want to learn more about how to program to do this, refer to these books:
- OpenGL 4 Shading Language Cookbook – Third Edition, David Wolff, by Packt publishing
- Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDA, Bhaumik Vaidya, by Packt publishing
- Hands-On GPU Programming with Python and CUDA, Dr. Brian Tuomanen, by Packt publishing