---
title: "makeComputePipelineState(descriptor:dynamicLinkingDescriptor:compilerTaskOptions:)"
framework: metal
role: symbol
role_heading: Instance Method
path: "metal/mtl4compiler/makecomputepipelinestate(descriptor:dynamiclinkingdescriptor:compilertaskoptions:)-19x"
---

# makeComputePipelineState(descriptor:dynamicLinkingDescriptor:compilerTaskOptions:)

Creates a new compute pipeline state asynchronously.

## Declaration

```swift
func makeComputePipelineState(descriptor: MTL4ComputePipelineDescriptor, dynamicLinkingDescriptor: MTL4PipelineStageDynamicLinkingDescriptor? = nil, compilerTaskOptions: MTL4CompilerTaskOptions? = nil) async throws -> any MTLComputePipelineState
```

## Parameters

- `descriptor`: A compute pipeline state descriptor, describing the compute pipeline to create.
- `dynamicLinkingDescriptor`: An optional parameter that provides additional configuration for linking the pipeline state object.
- `compilerTaskOptions`: A description of the compilation process itself, providing parameters that influence execution of the compilation process.

## Return Value

Return Value A compute pipeline state upon success, otherwise this method throws.
