Options for families of GPUs.


enum MTLGPUFamily : Int


Testing for Common GPU Family Characteristics

case common1

A GPU supporting the common family 1 characteristics.

case common2

A GPU supporting the common family 2 characteristics.

case common3

A GPU supporting the common family 3 characteristics.

Testing for iOS Family GPUs

case apple1

An Apple family 1 GPU.

case apple2

An Apple family 2 GPU.

case apple3

An Apple family 3 GPU.

case apple4

An Apple family 4 GPU.

case apple5

An Apple family 5 GPU.

case apple6

An Apple family 6 GPU.

Testing for macOS Family GPUs

case mac1

A family 1 Mac GPU.

case mac2

A family 2 Mac GPU.

Testing for Mac Catalyst Family GPUs

case macCatalyst1

A family 1 Mac GPU when running in an iOS app.

case macCatalyst2

A family 2 Mac GPU when running in an iOS app.

See Also

Querying Features

Detecting GPU Features and Metal Software Versions

Use the device object’s properties to determine how you perform tasks in Metal.

func supportsFamily(MTLGPUFamily) -> Bool

Determines whether the device object supports the feature set of a particular GPU family.


func supportsFeatureSet(MTLFeatureSet) -> Bool

Determines whether a device supports a particular feature set.


enum MTLFeatureSet

The device feature sets that define specific platform, hardware, and software configurations.