---
title: SIMD
framework: swift
role: symbol
role_heading: Protocol
path: swift/simd
---

# SIMD

A SIMD vector of a fixed number of elements.

## Declaration

```swift
protocol SIMD<Scalar> : CustomStringConvertible, Decodable, Encodable, ExpressibleByArrayLiteral, Hashable, SIMDStorage
```

## Topics

### Operators

- [&(_:_:)](swift/simd/&(_:_:)-7euv2.md)
- [&(_:_:)](swift/simd/&(_:_:)-9iwe1.md)
- [&(_:_:)](swift/simd/&(_:_:)-hube.md)
- [&*(_:_:)](swift/simd/&*(_:_:)-6dnx3.md)
- [&*(_:_:)](swift/simd/&*(_:_:)-6q9r4.md)
- [&*(_:_:)](swift/simd/&*(_:_:)-96x3e.md)
- [&*=(_:_:)](swift/simd/&*=(_:_:)-2nncu.md)
- [&*=(_:_:)](swift/simd/&*=(_:_:)-7upvw.md)
- [&+(_:_:)](swift/simd/&+(_:_:)-11ezq.md)
- [&+(_:_:)](swift/simd/&+(_:_:)-2dwe6.md)
- [&+(_:_:)](swift/simd/&+(_:_:)-7atvo.md)
- [&+=(_:_:)](swift/simd/&+=(_:_:)-4nb37.md)
- [&+=(_:_:)](swift/simd/&+=(_:_:)-6bl8h.md)
- [&-(_:_:)](swift/simd/&-(_:_:)-18r5t.md)
- [&-(_:_:)](swift/simd/&-(_:_:)-3k78n.md)
- [&-(_:_:)](swift/simd/&-(_:_:)-8sti5.md)
- [&-=(_:_:)](swift/simd/&-=(_:_:)-8wqjs.md)
- [&-=(_:_:)](swift/simd/&-=(_:_:)-9uxv2.md)
- [&=(_:_:)](swift/simd/&=(_:_:)-8ruc4.md)
- [&=(_:_:)](swift/simd/&=(_:_:)-9p2uz.md)
- [&>>(_:_:)](swift/simd/&__(_:_:)-4zcvd.md)
- [&>>(_:_:)](swift/simd/&__(_:_:)-5ccr.md)
- [&<<(_:_:)](swift/simd/&__(_:_:)-5zfif.md)
- [&<<(_:_:)](swift/simd/&__(_:_:)-6vdh9.md)
- [&>>(_:_:)](swift/simd/&__(_:_:)-8f94f.md)
- [&<<(_:_:)](swift/simd/&__(_:_:)-9p0g4.md)
- [&<<=(_:_:)](swift/simd/&__=(_:_:)-2r7mx.md)
- [&>>=(_:_:)](swift/simd/&__=(_:_:)-66i5n.md)
- [&>>=(_:_:)](swift/simd/&__=(_:_:)-8yrf.md)
- [&<<=(_:_:)](swift/simd/&__=(_:_:)-94hft.md)
- [*(_:_:)](swift/simd/*(_:_:)-33k6i.md)
- [*(_:_:)](swift/simd/*(_:_:)-4fl9b.md)
- [*(_:_:)](swift/simd/*(_:_:)-4wltm.md)
- [*=(_:_:)](swift/simd/*=(_:_:)-33czt.md)
- [*=(_:_:)](swift/simd/*=(_:_:)-jal7.md)
- [+(_:_:)](swift/simd/+(_:_:)-48zcp.md)
- [+(_:_:)](swift/simd/+(_:_:)-64jan.md)
- [+(_:_:)](swift/simd/+(_:_:)-68uuk.md)
- [+=(_:_:)](swift/simd/+=(_:_:)-14pp9.md)
- [+=(_:_:)](swift/simd/+=(_:_:)-3jf1j.md)
- [+=(_:_:)](swift/simd/+=(_:_:)-9f7e0.md)
- [-(_:)](swift/simd/-(_:)-7asi6.md)
- [-(_:)](swift/simd/-(_:)-9ukvl.md)
- [-(_:_:)](swift/simd/-(_:_:)-2ad59.md)
- [-(_:_:)](swift/simd/-(_:_:)-3lx2i.md)
- [-(_:_:)](swift/simd/-(_:_:)-oego.md)
- [-=(_:_:)](swift/simd/-=(_:_:)-4uwnp.md)
- [-=(_:_:)](swift/simd/-=(_:_:)-6dwmc.md)
- [-=(_:_:)](swift/simd/-=(_:_:)-6ejxe.md)
- [.!=(_:_:)](swift/simd/'.!=(_:_:)-3m98p.md)
- [.!=(_:_:)](swift/simd/'.!=(_:_:)-402ba.md)
- [.!=(_:_:)](swift/simd/'.!=(_:_:)-8undu.md)
- [.==(_:_:)](swift/simd/'.==(_:_:)-1nb4h.md)
- [.==(_:_:)](swift/simd/'.==(_:_:)-5akc8.md)
- [.==(_:_:)](swift/simd/'.==(_:_:)-8utr5.md)
- [.>(_:_:)](swift/simd/'._(_:_:)-2bb66.md)
- [.<(_:_:)](swift/simd/'._(_:_:)-2g6i2.md)
- [.>(_:_:)](swift/simd/'._(_:_:)-6kr63.md)
- [.>(_:_:)](swift/simd/'._(_:_:)-7ad36.md)
- [.<(_:_:)](swift/simd/'._(_:_:)-8bwmo.md)
- [.<(_:_:)](swift/simd/'._(_:_:)-935pf.md)
- [.>=(_:_:)](swift/simd/'._=(_:_:)-1grcf.md)
- [.>=(_:_:)](swift/simd/'._=(_:_:)-4poyx.md)
- [.<=(_:_:)](swift/simd/'._=(_:_:)-7ulie.md)
- [.<=(_:_:)](swift/simd/'._=(_:_:)-8vgvo.md)
- [.>=(_:_:)](swift/simd/'._=(_:_:)-d7g2.md)
- [.<=(_:_:)](swift/simd/'._=(_:_:)-iulp.md)
- [%(_:_:)](swift/simd/_(_:_:)-1qdv9.md)
- [/(_:_:)](swift/simd/_(_:_:)-1rb4.md)
- [|(_:_:)](swift/simd/_(_:_:)-225ln.md)
- [/(_:_:)](swift/simd/_(_:_:)-2hi2t.md)
- [/(_:_:)](swift/simd/_(_:_:)-2om3p.md)
- [|(_:_:)](swift/simd/_(_:_:)-3ge91.md)
- [%(_:_:)](swift/simd/_(_:_:)-3scvv.md)
- [%(_:_:)](swift/simd/_(_:_:)-4djx9.md)
- [|(_:_:)](swift/simd/_(_:_:)-5f3rz.md)
- [^(_:_:)](swift/simd/_(_:_:)-620ag.md)
- [^(_:_:)](swift/simd/_(_:_:)-6ryjr.md)
- [/(_:_:)](swift/simd/_(_:_:)-6tba5.md)
- [^(_:_:)](swift/simd/_(_:_:)-73syd.md)
- [/(_:_:)](swift/simd/_(_:_:)-80bu5.md)
- [/(_:_:)](swift/simd/_(_:_:)-8gl48.md)
- [%=(_:_:)](swift/simd/_=(_:_:)-17fvb.md)
- [|=(_:_:)](swift/simd/_=(_:_:)-1olgw.md)
- [/=(_:_:)](swift/simd/_=(_:_:)-1xum3.md)
- [/=(_:_:)](swift/simd/_=(_:_:)-2i5w5.md)
- [^=(_:_:)](swift/simd/_=(_:_:)-5qmfn.md)
- [|=(_:_:)](swift/simd/_=(_:_:)-7q26h.md)
- [/=(_:_:)](swift/simd/_=(_:_:)-9rh2.md)
- [^=(_:_:)](swift/simd/_=(_:_:)-9yqbl.md)
- [/=(_:_:)](swift/simd/_=(_:_:)-dtaz.md)
- [%=(_:_:)](swift/simd/_=(_:_:)-eq5q.md)
- [~(_:)](swift/simd/~(_:).md)

### Associated Types

- [MaskStorage](swift/simd/maskstorage.md)

### Initializers

- [init(_:)](swift/simd/init(_:)-18uy8.md)
- [init(_:)](swift/simd/init(_:)-4h623.md)
- [init(repeating:)](swift/simd/init(repeating:).md)

### Instance Properties

- [indices](swift/simd/indices.md)
- [leadingZeroBitCount](swift/simd/leadingzerobitcount.md)
- [nonzeroBitCount](swift/simd/nonzerobitcount.md)
- [trailingZeroBitCount](swift/simd/trailingzerobitcount.md)

### Instance Methods

- [addProduct(_:_:)](swift/simd/addproduct(_:_:)-256j6.md)
- [addProduct(_:_:)](swift/simd/addproduct(_:_:)-3mvjt.md)
- [addProduct(_:_:)](swift/simd/addproduct(_:_:)-i1fp.md)
- [addingProduct(_:_:)](swift/simd/addingproduct(_:_:)-4h4k3.md)
- [addingProduct(_:_:)](swift/simd/addingproduct(_:_:)-59qn8.md)
- [addingProduct(_:_:)](swift/simd/addingproduct(_:_:)-kk15.md)
- [clamp(lowerBound:upperBound:)](swift/simd/clamp(lowerbound:upperbound:)-3tdwm.md)
- [clamp(lowerBound:upperBound:)](swift/simd/clamp(lowerbound:upperbound:)-yh51.md)
- [clamped(lowerBound:upperBound:)](swift/simd/clamped(lowerbound:upperbound:)-4k4gy.md)
- [clamped(lowerBound:upperBound:)](swift/simd/clamped(lowerbound:upperbound:)-9hl58.md)
- [formSquareRoot()](swift/simd/formsquareroot().md)
- [max()](swift/simd/max()-7j0po.md)
- [max()](swift/simd/max()-l6ds.md)
- [min()](swift/simd/min()-7pa71.md)
- [min()](swift/simd/min()-9z12h.md)
- [replace(with:where:)](swift/simd/replace(with:where:)-6if0p.md)
- [replace(with:where:)](swift/simd/replace(with:where:)-91tn3.md)
- [replacing(with:where:)](swift/simd/replacing(with:where:)-1nga6.md)
- [replacing(with:where:)](swift/simd/replacing(with:where:)-8vzk.md)
- [round(_:)](swift/simd/round(_:).md)
- [rounded(_:)](swift/simd/rounded(_:).md)
- [squareRoot()](swift/simd/squareroot().md)
- [sum()](swift/simd/sum().md)
- [wrappedSum()](swift/simd/wrappedsum().md)

### Type Properties

- [one](swift/simd/one-428b1.md)
- [one](swift/simd/one-6bgr9.md)
- [zero](swift/simd/zero-6gnz.md)
- [zero](swift/simd/zero-8n566.md)

### Type Methods

- [random(in:)](swift/simd/random(in:)-13ruo.md)
- [random(in:)](swift/simd/random(in:)-3meec.md)
- [random(in:)](swift/simd/random(in:)-4rat4.md)
- [random(in:)](swift/simd/random(in:)-5ur5a.md)
- [random(in:using:)](swift/simd/random(in:using:)-5uz8w.md)
- [random(in:using:)](swift/simd/random(in:using:)-86tab.md)
- [random(in:using:)](swift/simd/random(in:using:)-8bcnv.md)
- [random(in:using:)](swift/simd/random(in:using:)-8yt59.md)

## Relationships

### Inherits From

- [CustomStringConvertible](swift/customstringconvertible.md)
- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)
- [ExpressibleByArrayLiteral](swift/expressiblebyarrayliteral.md)
- [Hashable](swift/hashable.md)
- [SIMDStorage](swift/simdstorage.md)

### Conforming Types

- [SIMD16](swift/simd16.md)
- [SIMD2](swift/simd2.md)
- [SIMD3](swift/simd3.md)
- [SIMD32](swift/simd32.md)
- [SIMD4](swift/simd4.md)
- [SIMD64](swift/simd64.md)
- [SIMD8](swift/simd8.md)
- [SIMDMask](swift/simdmask.md)

## See Also

### Supporting Types

- [SIMDScalar](swift/simdscalar.md)
- [SIMDStorage](swift/simdstorage.md)
- [SIMDMask](swift/simdmask.md)
