silicon atlasTHE HARDWARE REFERENCE
العربية
Reference/Memory & storage
Memory & storage

Unified memory & shared addressing

Sharing physical RAM and sharing an address abstraction are distinct designs.

“Unified” describes a convenience, but you still need to follow the data.
Address space

How pointers are interpreted.

LIVE EXPERIMENT

Find the bottleneck

Runs on your device
05001,0001,5002,0000.25141632GFLOP/sIntensity (FLOP / byte)
Ideal upper bound400 GFLOP/s
Limiting resourceMemory
Ridge point10 FLOP/B

Low arithmetic intensity hits the memory ceiling. More data reuse can move the workload toward the compute ceiling.

What this model includes

An ideal upper bound with fixed peak compute and bandwidth. Ignores latency, overhead, cache-level traffic, and instruction mix.

FOLLOW THE MECHANISM

What happens inside

1

Ask what is unified

An integrated system can let CPU and GPU use the same physical memory. A managed memory API can provide one address abstraction across separate memories using migration or remote access. These are different mechanisms. Shared addressing does not promise identical cache behavior or simultaneous safe access.

2

Account for access and ownership

A runtime may fault, migrate pages, pin memory, or map host buffers for a device. Access direction, residency, coherence, and synchronization determine cost. Alternating processors over a large working set can trigger repeated migration. Shared physical RAM can instead create contention on common controllers.

PUT IT TO WORK

What this means for your code

Low-level engineer

Read device mapping and managed-memory contracts. Explicit prefetch, residency control, or synchronization can matter even with one pointer.

Software developer

Keep phases local to one processor when useful. Avoid bouncing large data between CPU and GPU after each tiny operation.

GO TO THE SOURCE

Read the actual specifications

These references supply the underlying contracts and implementation details. The diagrams here are simplified teaching models.

NVIDIA · CUDA programming guideNVIDIA
Linux · DMA API guideLinux kernel documentation

Keep following the connection

Understood the idea? Keep a note of your progress.