---
title: ComputeUnitKind
framework: coreai
role: symbol
role_heading: Enumeration
path: coreai/computeunitkind
---

# ComputeUnitKind

A type of hardware compute unit available for model inference.

## Declaration

```swift
enum ComputeUnitKind
```

## Overview

Overview You use compute unit kinds with SpecializationOptions to control which hardware the framework targets when specializing a model. By default, specialization uses all available compute units on the device.

## Topics

### Defining compute unit types

- [ComputeUnitKind.cpu](coreai/computeunitkind/cpu.md)
- [ComputeUnitKind.gpu](coreai/computeunitkind/gpu.md)
- [ComputeUnitKind.neuralEngine](coreai/computeunitkind/neuralengine.md)

### Checking availability

- [availableKinds](coreai/computeunitkind/availablekinds.md)

## Relationships

### Conforms To

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

## See Also

### Configuration

- [Managing model specialization and caching](coreai/managing-model-specialization-and-caching.md)
- [Compiling Core AI models ahead of time](coreai/compiling-core-ai-models-ahead-of-time.md)
- [AIModelCache](coreai/aimodelcache.md)
- [SpecializationOptions](coreai/specializationoptions.md)
