Programming with compute shaders (efficiently), balancing workloads with resources and thinking in parallel, gives many opportunities to learn how GPUs really work (well, pretty close at least). A few links to get you started. (1/N)
A very gentle intro to CUDA devblogs.nvidia.com/even-easier-in…, devblogs.nvidia.com/easy-introduct…, then a great course on Udacity "Intro to Parallel Programming" eu.udacity.com/course/intro-t… (2/N)
Understanding how the GPU works is crucial when writing shaders: Life of a triangle - NVIDIA's logical pipeline developer.nvidia.com/content/life-t…, Parallel Computer Architecture and Programming 15418.courses.cs.cmu.edu/tsinghua2017/ (3/N)
DirectCompute Lecture Series 101, to get you started with Direct3D compute shaders channel9.msdn.com/Blogs/gclassy/… (4/N)
The CUDA programming guides contain a wealth of information and are well worth studying. Lots of it is applicable to Direct3D and OpenCL as well docs.nvidia.com/cuda/index.html (5/N)
When you are ready to dig deep into GPU architectures and ISAs this site contains lots of guides from many vendors: renderingpipeline.com/graphics-liter… (6/N)
Specifically for AMD's GCN, I like this post gpuopen.com/optimizing-gpu… by @SebAaltonen, it provides some good insight into the architecture and tips about how to program it efficiently (7/N)
Also if you want to get even closer to the metal, use low-level features like direct thread communication, and you are on PC, you can check the extensions provided by both AMD gpuopen.com/amd-gpu-servic… and NVidia developer.nvidia.com/unlocking-gpu-…. Have fun! (8/N)
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.
