---
title: MTLDeviceNotificationName
framework: metal
role: symbol
role_heading: Structure
path: metal/mtldevicenotificationname
---

# MTLDeviceNotificationName

A notification that represents a change to a GPU device in the system.

## Declaration

```swift
struct MTLDeviceNotificationName
```

## Topics

### Creating a notification name

- [wasAdded](metal/mtldevicenotificationname/wasadded.md)
- [removalRequested](metal/mtldevicenotificationname/removalrequested.md)
- [wasRemoved](metal/mtldevicenotificationname/wasremoved.md)
- [init(rawValue:)](metal/mtldevicenotificationname/init(rawvalue:).md)

## Relationships

### Conforms To

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

## See Also

### Locating GPUs

- [Finding multiple GPUs on an Intel-based Mac](metal/finding-multiple-gpus-on-an-intel-based-mac.md)
- [Getting the GPU that drives a view’s display](metal/getting-the-gpu-that-drives-a-views-display.md)
- [MTLCopyAllDevices()](metal/mtlcopyalldevices().md)
- [MTLCopyAllDevicesWithObserver(handler:)](metal/mtlcopyalldeviceswithobserver(handler:).md)
- [MTLRemoveDeviceObserver(_:)](metal/mtlremovedeviceobserver(_:).md)
- [CGDirectDisplayCopyCurrentMetalDevice(_:)](coregraphics/cgdirectdisplaycopycurrentmetaldevice(_:).md)
- [MTLDeviceNotificationHandler](metal/mtldevicenotificationhandler.md)
