---
title: MPSGraphCompilationDescriptor
framework: metalperformanceshadersgraph
role: symbol
role_heading: Class
path: metalperformanceshadersgraph/mpsgraphcompilationdescriptor
---

# MPSGraphCompilationDescriptor

A class that consists of all the levers for compiling graphs.

## Declaration

```swift
class MPSGraphCompilationDescriptor
```

## Topics

### Instance Properties

- [callables](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/callables.md)
- [compilationCompletionHandler](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/compilationcompletionhandler.md)
- [dispatchQueue](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/dispatchqueue.md)
- [optimizationLevel](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/optimizationlevel.md)
- [optimizationProfile](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/optimizationprofile.md)
- [reducedPrecisionFastMath](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/reducedprecisionfastmath.md)
- [waitForCompilationCompletion](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/waitforcompilationcompletion.md)

### Instance Methods

- [convertLayoutToNHWC()](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/convertlayouttonhwc().md)
- [disableAutoLayoutConversion()](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/disableautolayoutconversion().md)
- [disableTypeInference()](metalperformanceshadersgraph/mpsgraphcompilationdescriptor/disabletypeinference().md)

## Relationships

### Inherits From

- [MPSGraphObject](metalperformanceshadersgraph/mpsgraphobject.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Classes

- [MPSGraph](metalperformanceshadersgraph/mpsgraph.md)
- [MPSGraphConvolution2DOpDescriptor](metalperformanceshadersgraph/mpsgraphconvolution2dopdescriptor.md)
- [MPSGraphConvolution3DOpDescriptor](metalperformanceshadersgraph/mpsgraphconvolution3dopdescriptor.md)
- [MPSGraphCreateSparseOpDescriptor](metalperformanceshadersgraph/mpsgraphcreatesparseopdescriptor.md)
- [MPSGraphDepthwiseConvolution2DOpDescriptor](metalperformanceshadersgraph/mpsgraphdepthwiseconvolution2dopdescriptor.md)
- [MPSGraphDepthwiseConvolution3DOpDescriptor](metalperformanceshadersgraph/mpsgraphdepthwiseconvolution3dopdescriptor.md)
- [MPSGraphDevice](metalperformanceshadersgraph/mpsgraphdevice.md)
- [MPSGraphExecutable](metalperformanceshadersgraph/mpsgraphexecutable.md)
- [MPSGraphExecutableExecutionDescriptor](metalperformanceshadersgraph/mpsgraphexecutableexecutiondescriptor.md)
- [MPSGraphExecutableSerializationDescriptor](metalperformanceshadersgraph/mpsgraphexecutableserializationdescriptor.md)
- [MPSGraphExecutionDescriptor](metalperformanceshadersgraph/mpsgraphexecutiondescriptor.md)
- [MPSGraphFFTDescriptor](metalperformanceshadersgraph/mpsgraphfftdescriptor.md)
- [MPSGraphGRUDescriptor](metalperformanceshadersgraph/mpsgraphgrudescriptor.md)
- [MPSGraphImToColOpDescriptor](metalperformanceshadersgraph/mpsgraphimtocolopdescriptor.md)
- [MPSGraphLSTMDescriptor](metalperformanceshadersgraph/mpsgraphlstmdescriptor.md)
