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.
```svg
```
**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.