---
title: MTLCounterSamplingPoint
framework: metal
role: symbol
role_heading: Enumeration
path: metal/mtlcountersamplingpoint
---

# MTLCounterSamplingPoint

Options for different times when you can sample GPU counters.

## Declaration

```swift
enum MTLCounterSamplingPoint
```

## Mentioned in

Sampling GPU data into counter sample buffers

## Topics

### Reading sampling boundary types

- [MTLCounterSamplingPoint.atBlitBoundary](metal/mtlcountersamplingpoint/atblitboundary.md)
- [MTLCounterSamplingPoint.atDispatchBoundary](metal/mtlcountersamplingpoint/atdispatchboundary.md)
- [MTLCounterSamplingPoint.atDrawBoundary](metal/mtlcountersamplingpoint/atdrawboundary.md)
- [MTLCounterSamplingPoint.atStageBoundary](metal/mtlcountersamplingpoint/atstageboundary.md)
- [MTLCounterSamplingPoint.atTileDispatchBoundary](metal/mtlcountersamplingpoint/attiledispatchboundary.md)

### Initializers

- [init(rawValue:)](metal/mtlcountersamplingpoint/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

### Sampling a GPU device’s counters

- [counterSets](metal/mtldevice/countersets.md)
- [supportsCounterSampling(_:)](metal/mtldevice/supportscountersampling(_:).md)
- [makeCounterSampleBuffer(descriptor:)](metal/mtldevice/makecountersamplebuffer(descriptor:).md)
