---
title: MTLCPUCacheMode
framework: metal
role: symbol
role_heading: Enumeration
path: metal/mtlcpucachemode
---

# MTLCPUCacheMode

Options for the CPU cache mode that define the CPU mapping of the resource.

## Declaration

```swift
enum MTLCPUCacheMode
```

## Topics

### Specifying the cache mode

- [MTLCPUCacheMode.defaultCache](metal/mtlcpucachemode/defaultcache.md)
- [MTLCPUCacheMode.writeCombined](metal/mtlcpucachemode/writecombined.md)

### Initializers

- [init(rawValue:)](metal/mtlcpucachemode/init(rawvalue:).md)

## Relationships

### Conforms To

- [BitwiseCopyable](swift/bitwisecopyable.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Reading memory and storage properties

- [cpuCacheMode](metal/mtlresource/cpucachemode.md)
- [storageMode](metal/mtlresource/storagemode.md)
- [hazardTrackingMode](metal/mtlresource/hazardtrackingmode.md)
- [resourceOptions](metal/mtlresource/resourceoptions.md)
- [MTLStorageMode](metal/mtlstoragemode.md)
- [MTLHazardTrackingMode](metal/mtlhazardtrackingmode.md)
