Register File
Register File in GPU architecture is a high-speed memory bank providing each thread with dedicated registers for storing operands and intermediate results.
## What Is a Register File?
- Location: Inside each Streaming Multiprocessor (SM)
- Speed: Single-cycle access (fastest memory in GPU hierarchy)
- Capacity: 64KB-256KB per SM (varies by GPU generation)
- Allocation: Dynamically partitioned among threads
## Why Register Files Matter
Register files enable thousands of concurrent threads by providing each thread private, zero-latency storage. Register pressure limits occupancy.
Register Pressure Trade-off:
| Registers/Thread | Threads/SM | Occupancy |
|------------------|------------|-----------|
| 32 | 2048 | 100% |
| 64 | 1024 | 50% |
| 128 | 512 | 25% |
Fewer registers = more threads, but may cause spills to slow memory.