<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "macOS: -",
    "tvOS: -",
    "visionOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "MetalPerformanceShaders",
  "identifier" : "/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Metal Performance Shaders"
    ],
    "preciseIdentifier" : "c:objc(pl)MPSCNNConvolutionDataSource"
  },
  "title" : "MPSCNNConvolutionDataSource"
}
-->

# MPSCNNConvolutionDataSource

The protocol that provides convolution filter weights and bias terms.

```
protocol MPSCNNConvolutionDataSource : NSCopying, NSObjectProtocol
```

## Topics

### Instance Methods

[`-  biasTerms`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/biasTerms())

[`-  dataType`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/dataType())

[`-  descriptor`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/descriptor())

[`-  label`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/label())

[`-  load`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/load())

[`-  lookupTableForUInt8Kernel`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/lookupTableForUInt8Kernel())

[`-  purge`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/purge())

[`-  rangesForUInt8Kernel`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/rangesForUInt8Kernel())

[`-  weights`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/weights())

[`-  copyWithZone:device:`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/copy(with:device:))

[`-  kernelWeightsDataType`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/kernelWeightsDataType())

[`-  updateWithCommandBuffer:gradientState:sourceState:`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/update(with:gradientState:sourceState:))

[`-  updateWithGradientState:sourceState:`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/update(with:sourceState:))

[`-  weightsLayout`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/weightsLayout())

[`-  weightsQuantizationType`](/documentation/MetalPerformanceShaders/MPSCNNConvolutionDataSource/weightsQuantizationType())

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`NSCopying`](/documentation/Foundation/NSCopying)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)