Visible to Intel only — GUID: GUID-68099889-6768-474F-913B-7A9107AAEAC7
Visible to Intel only — GUID: GUID-68099889-6768-474F-913B-7A9107AAEAC7
MatMul
General
MatMul operation computes the product of two tensors with optional bias addition The variable names follow the standard Naming Conventions, typically taking 2D input tensors as an example, the formula is below:
In the shape of a tensor, two right-most axes are interpreted as row and column dimensions of a matrix while all left-most axes (if present) are interpreted as batch dimensions. The operation supports broadcasting semantics for those batch dimensions. For example can be broadcasted to if the corresponding dimension in is 1 (and vice versa). Additionally, if ranks of and are different, the tensor with a smaller rank will be unsqueezed from the left side of dimensions (inserting 1) to make sure two ranks matched.
Operation attributes
Attribute Name |
Description |
Value Type |
Supported Values |
Required or Optional |
---|---|---|---|---|
Controls whether to transpose the last two dimensions of src . |
bool |
True, False (default) |
Optional |
|
Controls whether to transpose the last two dimensions of weights . |
bool |
True, False (default) |
Optional |
The above transpose attribute will not in effect when rank of an input tensor is less than 2. For example, in library implementation 1D tensor is unsqueezed firstly before compilation. The rule is applied independently.
For tensor, the rule is defined like: [d] -> [1, d].
For tensor, the rule is defined like: [d] -> [d, 1].
Execution arguments
The inputs and outputs must be provided according to below index order when constructing an operation.
Inputs
Index |
Argument Name |
Required or Optional |
---|---|---|
0 |
src |
Required |
1 |
weights |
Required |
2 |
bias |
Optional |
Outputs
Index |
Argument Name |
Required or Optional |
---|---|---|
0 |
dst |
Required |
Supported data types
MatMul operation supports the following data type combinations.
Src |
Weights |
Bias |
Dst |
---|---|---|---|
f32 |
f32 |
f32 |
f32 |
bf16 |
bf16 |
bf16 |
bf16 |
f16 |
f16 |
f16 |
f16 |