Litherum: Implementing a GPU's Programming Model on a CPU
litherum.blogspot.com · 5,414 words · saved by 1 readers
SIMT The programming model of a GPU uses what has been coined "single instruction multiple thread." The idea is that the programmer writes t...
SIMT The programming model of a GPU uses what has been coined "single instruction multiple thread." The idea is that the programmer writes their program from the perspective of a single thread, using normal regular variables. So, for example, a programmer might write something like: int x = threadID; int y = 6; int z = x + y; Straightforward, right? Then, they ask the system to run this program a million times, in parallel, with different threadIDs. The system *could* simply schedule a million threads to do this, but GPUs do better than this. Instead, the compiler will transparently…
saved by
related reading
- A case for learning GPU programming with a compute-first mindset – Maister's Graphics Adventuresthemaister.net
- GitHub - adam-maj/tiny-gpu: A minimal GPU design in Verilog to learn how GPUs work from the ground up · GitHubgithub.com
- Execution Model - SLING user documentationdoc.sling.si
- CUDA C++ Programming Guide (Legacy) — CUDA C++ Programming Guidedocs.nvidia.com
- README | GPU Glossarymodal.com
- 1. Introduction — PTX ISA 9.3 documentationdocs.nvidia.com
- Inside NVIDIA GPUs: Anatomy of high performance matmul kernels - Aleksa Gordićaleksagordic.com
- BrrrVizbrrrviz.com
- How to Optimize a CUDA Matmul Kernel for cuBLAS-like Performance: a Worklogsiboehm.com
- Gentle introduction to GPUs inner workings | vkSegfaultvksegfault.github.io
- How to Think About GPUs | How To Scale Your Modeljax-ml.github.io
- A history of NVidia Stream Multiprocessorfabiensanglard.net