The analysis investigates the path a critical SASS instruction, a global load (LDG.E), takes through GPU hardware. This specific examination uses an NVIDIA RTX 4090 to understand how memory reads are processed. The goal is to detail the journey of data from global memory into a register for a vector-add kernel.
The CUDA kernel under investigation is a simple vector-add: `c[i] = a[i] + b[i]`. The compiled SASS instructions for this kernel include `IMAD.WIDE` and `LDG.E`. The `LDG.E` instruction is responsible for loading elements of vector `b` from global memory into a register, where they can then be added to elements of vector `a`.
A single `LDG.E` instruction requests four bytes across 32 lanes. Fulfilling this request involves several hardware stages: four 32-byte sectors, one cache line, an address translation, a crossbar crossing, and one of 36 L2 slices. If the data is not found in caches, it necessitates an activate and four column reads at a DRAM chip. The analysis aims to follow this entire path.
Many of the specific details regarding this hardware path are not publicly documented by NVIDIA. To overcome this, the analysis relies on timing experiments conducted directly on the hardware. This empirical approach allows for the inference of the internal workings and stages involved in GPU memory access.
✨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors — check the original sources. How BrevFeed works →
One email each morning: the day's tech stories, clustered across outlets and summarized. No account needed.
One email a day. Unsubscribe in one click, any time.
Spend a few minutes, get the whole day. Every topic's top stories in one hands-free rundown — listen, watch, or read the transcript.
▶ Play today's briefNew every morning, and the back catalogue is archived by date.
This analysis details the hardware path a global load instruction takes when a GPU reads memory, specifically focusing on an NVIDIA RTX 4090. It traces the journey of a vector-add kernel's memory access from the instruction level through various hardware components to understand the underlying mechanisms. This provides insight into GPU architecture and memory access patterns, which is relevant for optimizing high-performance computing applications.