applyMatrixMultiplication(inputA:transposed:inputB:transposed:output:alpha:workspace:filterParameters:)
Performs a matrix multiplication operation directly on two input matrices.
Declaration
static func applyMatrixMultiplication(inputA: BNNSNDArrayDescriptor, transposed transposeA: Bool, inputB: BNNSNDArrayDescriptor, transposed transposeB: Bool, output: BNNSNDArrayDescriptor, alpha: Float, workspace: UnsafeMutableRawBufferPointer?, filterParameters: BNNSFilterParameters? = nil) throwsParameters
- inputA:
The descriptor of matrix A.
- transposeA:
A Boolean value that indicates whether the function transposes the last two dimensions of matrix A.
- inputB:
The descriptor of matrix B.
- transposeB:
A Boolean value that indicates whether the function transposes the last two dimensions of matrix B.
- output:
The descriptor of the output.
- alpha:
A scalar value that scales the result.
- workspace:
A pointer to a memory region that the function uses as scratch space. This must have a size no less than the value that Matrixmultiplicationworkspacesize(inputa:transposed:inputb:transposed:output:alpha:filterparameters:) returns.
- filterParameters:
The filter runtime parameters.
See Also
Matrix multiplication
BNNSDirectApplyBroadcastMatMul(_:_:_:_:_:_:_:)BNNS.BroadcastMatrixMultiplyLayerBNNSLayerParametersBroadcastMatMulBNNSFilterCreateLayerBroadcastMatMul(_:_:)BNNSMatMulWorkspaceSize(_:_:_:_:_:_:_:)BNNSMatMul(_:_:_:_:_:_:_:_:)matrixMultiplicationWorkspaceSize(inputA:transposed:inputB:transposed:output:alpha:filterParameters:)