Apple Metal Memory Model
Apple's GPU programming model provides a relaxed memory model with atomics (relaxed/acquire/release) and threadgroup/device barriers in the Metal Shading Language. It is less formally specified in public than the other GPU models here.
Properties
Property vector author-extrapolated — set only where the model’s definition pins the cell down (unknown cells are omitted); cells citing a specific source are marked.
- Reordering sound
- yes Store→Load
- yes Store→Store
- yes Load→Load
- yes Load→Store
- Reasoning guarantees
- yes Coherence
- no In-order execution
Ordering relationships
- Compilation target of
- WebGPU / WGSL Memory Model — On Apple platforms WebGPU implementations lower WGSL to Metal.
References
- Apple Inc.. Metal Shading Language Specification. Apple Developer Documentation, 2023. developer.apple.com/metal/Metal-Shading-Language-Specification.pdf