oa::FnMatrix
FnMatrix namespace in the OA Core public surface.
Public Functions
Matrix oa::FnMatrix::avgPool2d(const Matrix & inX, oa::I32 inKernelSize, oa::I32 inStride, oa::I32 inPadding)Matrix oa::FnMatrix::avgPool2dBwd(const Matrix & inX, const Matrix & inGradOutput, oa::I32 inKernelSize, oa::I32 inStride, oa::I32 inPadding)BatchNorm2dBwdResult oa::FnMatrix::batchNorm2dBwd(const Matrix & inX, const Matrix & inGamma, const Matrix & inBeta, const Matrix & inMean, const Matrix & inVar, const Matrix & inOut, const Matrix & inDOut, oa::F32 inEps, bool inIsTraining)Matrix oa::FnMatrix::channelNorm(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::I32 inBatch, oa::I32 inChannels, oa::I32 inSeqLen, oa::F32 inEps)ChannelNormBwdResult oa::FnMatrix::channelNormBwd(const Matrix & inX, const Matrix & inWeight, const Matrix & inGradOutput, oa::I32 inBatch, oa::I32 inChannels, oa::I32 inSeqLen, oa::F32 inEps)Matrix oa::FnMatrix::channelNormRelu(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::I32 inBatch, oa::I32 inChannels, oa::I32 inSeqLen, oa::F32 inEps)ChannelNormBwdResult oa::FnMatrix::channelNormReluBwd(const Matrix & inX, const Matrix & inWeight, const Matrix & inFwdOut, const Matrix & inGradOutput, oa::I32 inBatch, oa::I32 inChannels, oa::I32 inSeqLen, oa::F32 inEps)Matrix oa::FnMatrix::col2Im1d(const Matrix & inDCols, oa::I32 inN, oa::I32 inC, oa::I32 inL, oa::I32 inK, oa::I32 inStride, oa::I32 inPadding, oa::I32 inDilation, oa::I32 inOutL)Matrix oa::FnMatrix::compactRowsBwd(const Matrix & inGradOut, const Matrix & inRowMap, const Matrix & inCount, MatrixShape inInputShape)Matrix oa::FnMatrix::conv1dBwdData(const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding, oa::U32 inDilation, const MatrixShape & inInputShape)Conv1dBwdWeightResult oa::FnMatrix::conv1dBwdWeight(const Matrix & inInput, const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding, oa::U32 inDilation)Matrix oa::FnMatrix::conv1dGemm(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::I32 inStride = 1, oa::I32 inPadding = 0, oa::I32 inDilation = 1)Matrix oa::FnMatrix::conv1dReluGemm(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::I32 inStride = 1, oa::I32 inPadding = 0, oa::I32 inDilation = 1)Matrix oa::FnMatrix::conv2d(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::U32 inStride, oa::U32 inPadding, oa::U32 inGroups = 1)Matrix oa::FnMatrix::conv2dBwdData(const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding, const MatrixShape & inInputShape, oa::U32 inGroups = 1)Conv2dBwdWeightResult oa::FnMatrix::conv2dBwdWeight(const Matrix & inInput, const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding, oa::U32 inGroups = 1)Matrix oa::FnMatrix::convTranspose2d(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, oa::U32 inStride, oa::U32 inPadding)Matrix oa::FnMatrix::convTranspose2dBwdData(const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding, const MatrixShape & inInputShape)ConvTranspose2dBwdWeightResult oa::FnMatrix::convTranspose2dBwdWeight(const Matrix & inInput, const Matrix & inDOut, const Matrix & inWeight, oa::U32 inStride, oa::U32 inPadding)Matrix oa::FnMatrix::eluBwd(const Matrix & inForwardOutput, const Matrix & inGradOutput, oa::F32 inAlpha = 1.0f)Matrix oa::FnMatrix::empty(MatrixShape inShape, oa::ScalarType inDtype = weightDtype(), oa::MemoryPlacement inPlacement = oa::MemoryPlacement::Auto)EmpyrealmAdtBwdResult oa::FnMatrix::empyrealmAdtBwd(const Matrix & inDOut, const Matrix & inDdA, const Matrix & inDt, oa::F32 inAFloor)EmpyrealmDtAdtResult oa::FnMatrix::empyrealmDtAdt(const Matrix & inDtRaw, const Matrix & inDdA, oa::F32 inDtMin, oa::F32 inDtMax, oa::F32 inAFloor)Matrix oa::FnMatrix::empyrealmDtBwd(const Matrix & inDOut, const Matrix & inX, oa::F32 inDtMin, oa::F32 inDtMax)Mamba3PreprocessResult oa::FnMatrix::empyrealmPreprocess(const Matrix & inProjected, const Matrix & inDtBias, const Mamba3PreprocessConfig & inConfig)Mamba3PreprocessBwdResult oa::FnMatrix::empyrealmPreprocessBwd(const Matrix & inProjected, const Matrix & inDtBias, const Matrix & inDZ, const Matrix & inDX, const Matrix & inDBh, const Matrix & inDCh, const Matrix & inDDT, const Matrix & inDADT, const Matrix & inDTrap, const Matrix & inDAngle, const Mamba3PreprocessConfig & inConfig)Matrix oa::FnMatrix::empyrealmSiso(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const SsmConfig & inConfig)SsmBwdResult oa::FnMatrix::empyrealmSisoBwd(const Matrix & inDOut, const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const SsmConfig & inConfig)Matrix oa::FnMatrix::empyrealmSisoStep(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const Matrix & inSsmState, const Matrix & inAngleState, const Matrix & inKState, const Matrix & inVState, const SsmConfig & inConfig)Matrix oa::FnMatrix::flashAttentionCausal(const Matrix & inQ, const Matrix & inK, const Matrix & inV, oa::F32 inScale)FlashAttentionBwdResult oa::FnMatrix::flashAttentionCausalBwd(const Matrix & inQ, const Matrix & inK, const Matrix & inV, const Matrix & inOutput, const Matrix & inLogSumExp, const Matrix & inGradOutput, oa::F32 inScale)Matrix oa::FnMatrix::fromBytes(oa::Span<const oa::U8> inData, MatrixShape inShape, oa::ScalarType inDtype = weightDtype())Matrix oa::FnMatrix::fromInt32(oa::Span<const oa::I32> inData, MatrixShape inShape, oa::ScalarType inDtype = oa::ScalarType::Int32)Matrix oa::FnMatrix::full(MatrixShape inShape, oa::F64 inValue, oa::ScalarType inDtype = weightDtype())Matrix oa::FnMatrix::gatherBwd(const Matrix & inIndices, const Matrix & inGradOutput, oa::I32 inVocabSize, oa::I32 inEmbedDim)Matrix oa::FnMatrix::gatherLastDimBwd(const Matrix & inGradOut, const Matrix & inIndices, oa::I32 inInputWidth)Matrix oa::FnMatrix::groupedGemmM(const Matrix & inX, const Matrix & inWeight, const Matrix & inOffsets)GroupedGemmMBwdResult oa::FnMatrix::groupedGemmMBwd(const Matrix & inDOut, const Matrix & inX, const Matrix & inWeight, const Matrix & inOffsets)Matrix oa::FnMatrix::groupedLinearM(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, const Matrix & inOffsets)Matrix oa::FnMatrix::groupedLinearMBiasBwd(const Matrix & inDOut, const Matrix & inOffsets, oa::I32 inNumExperts)GroupedLinearMBwdResult oa::FnMatrix::groupedLinearMBwd(const Matrix & inDOut, const Matrix & inX, const Matrix & inWeight, const Matrix & inOffsets)Matrix oa::FnMatrix::gruCellLinear(const Matrix & inGatesI, const Matrix & inHidden, const Matrix & inWeightHh, oa::I32 inHiddenSize, oa::U32 inTimeOffset, oa::U32 inBatchStride, const Matrix & inBiasHh = Matrix{})Matrix oa::FnMatrix::gruCellPointwise(const Matrix & inGatesI, const Matrix & inGatesH, const Matrix & inHidden, oa::I32 inHiddenSize, oa::U32 inTimeOffset = 0, oa::U32 inBatchStride = 1)GruCellPointwiseBwdResult oa::FnMatrix::gruCellPointwiseBwd(const Matrix & inGatesI, const Matrix & inGatesH, const Matrix & inHidden, const Matrix & inGradOutput, oa::I32 inHiddenSize, oa::U32 inTimeOffset = 0, oa::U32 inBatchStride = 1)GruScanResult oa::FnMatrix::gruScan(const Matrix & inGatesI, const Matrix & inWeightHh, oa::I32 inHiddenSize, oa::I32 inSeqLen, oa::I32 inBatch, const Matrix & inBiasHh = Matrix{})GruScanBwdResult oa::FnMatrix::gruScanBwd(const Matrix & inDOut, const Matrix & inGatesI, const Matrix & inHPrev, const Matrix & inWeightHh, oa::I32 inHiddenSize, oa::I32 inSeqLen, oa::I32 inBatch, const Matrix & inBiasHh = Matrix{})Matrix oa::FnMatrix::im2Col1d(const Matrix & inX, oa::I32 inK, oa::I32 inStride, oa::I32 inPadding, oa::I32 inDilation = 1)oa::Matrix oa::FnMatrix::layerNorm(const oa::Matrix & inSelf, const oa::Matrix & inWeight, const oa::Matrix & inBias, oa::F32 inEps)LayerNormBwdResult oa::FnMatrix::layerNormBwd(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, const Matrix & inOut, const Matrix & inMean, const Matrix & inRstd, const Matrix & inGradOutput, oa::F32 inEps = 1e-5F)Matrix oa::FnMatrix::leakyReluBwd(const Matrix & inForwardOutput, const Matrix & inGradOutput, oa::F32 inAlpha = 0.01f)Matrix oa::FnMatrix::linear(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias = Matrix{})Matrix oa::FnMatrix::linearDataReluBwd(const Matrix & inGradOutput, const Matrix & inWeight, const Matrix & inActivation)Matrix oa::FnMatrix::linearReluBwdData(const Matrix & inGradOutput, const Matrix & inWeight, const Matrix & inActivation)LinearWeightBiasBwdResult oa::FnMatrix::linearWeightBiasBwd(const Matrix & inInput, const Matrix & inGradOutput)Matrix oa::FnMatrix::logSoftmaxBwd(const Matrix & inForwardOutput, const Matrix & inGradOutput, oa::I32 inDim = -1)Matrix oa::FnMatrix::mamba3Mimo(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const Matrix & inMimoX, const Matrix & inMimoZ, const Matrix & inMimoO, const Matrix & inNormWeight, const SsmConfig & inConfig)Mamba3MimoBwdResult oa::FnMatrix::mamba3MimoBwd(const Matrix & inDOut, const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const Matrix & inMimoX, const Matrix & inMimoZ, const Matrix & inMimoO, const Matrix & inNormWeight, const SsmConfig & inConfig)Matrix oa::FnMatrix::mamba3MimoStep(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const Matrix & inMimoX, const Matrix & inMimoZ, const Matrix & inMimoO, const Matrix & inNormWeight, const Matrix & inSsmState, const Matrix & inAngleState, const Matrix & inKState, const Matrix & inVState, const SsmConfig & inConfig)Mamba3PreprocessResult oa::FnMatrix::mamba3Preprocess(const Matrix & inProjected, const Matrix & inDtBias, const Mamba3PreprocessConfig & inConfig)Mamba3PreprocessBwdResult oa::FnMatrix::mamba3PreprocessBwd(const Matrix & inProjected, const Matrix & inDtBias, const Matrix & inDZ, const Matrix & inDX, const Matrix & inDBh, const Matrix & inDCh, const Matrix & inDDT, const Matrix & inDADT, const Matrix & inDTrap, const Matrix & inDAngle, const Mamba3PreprocessConfig & inConfig)Matrix oa::FnMatrix::mamba3Siso(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const SsmConfig & inConfig)SsmBwdResult oa::FnMatrix::mamba3SisoBwd(const Matrix & inDOut, const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const SsmConfig & inConfig)Matrix oa::FnMatrix::mamba3SisoStep(const Matrix & inC, const Matrix & inB, const Matrix & inX, const Matrix & inZ, const Matrix & inAdt, const Matrix & inDt, const Matrix & inTrap, const Matrix & inAngle, const Matrix & inCBias, const Matrix & inBBias, const Matrix & inD, const Matrix & inSsmState, const Matrix & inAngleState, const Matrix & inKState, const Matrix & inVState, const SsmConfig & inConfig)Matrix oa::FnMatrix::maskedCategoricalAccuracyCount(const Matrix & inLogits, const Matrix & inLabels, const Matrix & inMask)oa::Matrix oa::FnMatrix::matMulNt(const oa::Matrix & inA, const oa::Matrix & inB, oa::MatMulPrecision inPrecision = oa::MatMulPrecision::Auto)Matrix oa::FnMatrix::maxBwd(const Matrix & inInput, const Matrix & inMaxValue, const Matrix & inGradOutput)MaxPool2dResult oa::FnMatrix::maxPool2d(const Matrix & inX, oa::I32 inKernelSize, oa::I32 inStride, oa::I32 inPadding)Matrix oa::FnMatrix::maxPool2dBwd(const Matrix & inX, const Matrix & inIndices, const Matrix & inGradOutput, oa::I32 inKernelSize, oa::I32 inStride, oa::I32 inPadding)Matrix oa::FnMatrix::mergeHeads(const Matrix & inX, oa::I32 inBatch, oa::I32 inSeqLen, oa::I32 inNumHeads)Matrix oa::FnMatrix::moeCombine(const Matrix & inPacked, const Matrix & inRouteGate, const Matrix & inInverse, const Matrix & inPackedSlot)MoeCombineBwdResult oa::FnMatrix::moeCombineBwd(const Matrix & inDOut, const Matrix & inPacked, const Matrix & inRouteGate, const Matrix & inInverse, const Matrix & inPackedSlot)Matrix oa::FnMatrix::moeGather(const Matrix & inSelf, const Matrix & inIndices, const Matrix & inInverse)Matrix oa::FnMatrix::moeGatherBwd(const Matrix & inSource, const Matrix & inInverse, oa::I32 inOutRows)Matrix oa::FnMatrix::moeRouteWeightsBwd(const Matrix & inDOut, const Matrix & inProbs, const Matrix & inExpertIndices, const Matrix & inRouteWeights)void oa::FnMatrix::moeRoutingBiasUpdate(const Matrix & inSelectionMask, Matrix & inOutBias, oa::I32 inExpertsPerToken, oa::F32 inGamma)oa::Matrix oa::FnMatrix::philoxNormal(const oa::Matrix & inA, oa::F32 inMean = 0.0F, oa::F32 inStddev = 1.0F, oa::U64 inSeed = 0)oa::Matrix oa::FnMatrix::philoxUniform(const oa::Matrix & inA, oa::F32 inLow = 0.0F, oa::F32 inHigh = 1.0F, oa::U64 inSeed = 0)Matrix oa::FnMatrix::randKaimingUniform(MatrixShape inShape, oa::ScalarType inDtype = weightDtype())Matrix oa::FnMatrix::repeatInterleaveBwd(const Matrix & inGradOut, MatrixShape inInputShape, oa::I32 inRepeats, oa::I32 inDim)ResidualRmsNormResult oa::FnMatrix::residualRmsNorm(const Matrix & inA, const Matrix & inB, const Matrix & inWeight, oa::F32 inEps)oa::Matrix oa::FnMatrix::rmsNorm(const oa::Matrix & inSelf, const oa::Matrix & inWeight, oa::F32 inEps)RmsNormBwdResult oa::FnMatrix::rmsNormBwd(const Matrix & inX, const Matrix & inWeight, const Matrix & inGradOutput, oa::F32 inEps = 1e-5F)Matrix oa::FnMatrix::rmsNormGated(const Matrix & inSelf, const Matrix & inWeight, const Matrix & inBias, const Matrix & inZ, oa::F32 inEps, bool inNormBeforeGate = true)RmsNormGatedBwdResult oa::FnMatrix::rmsNormGatedBwd(const Matrix & inX, const Matrix & inWeight, const Matrix & inBias, const Matrix & inZ, const Matrix & inGradOutput, oa::F32 inEps)Matrix oa::FnMatrix::rnnCellLinear(const Matrix & inGatesI, const Matrix & inHidden, const Matrix & inWeightHh, oa::U32 inTimeOffset = 0, oa::U32 inBatchStride = 1, const Matrix & inBiasHh = Matrix{})RnnCellPointwiseBwdResult oa::FnMatrix::rnnCellPointwiseBwd(const Matrix & inGatesI, const Matrix & inGatesH, const Matrix & inGradOutput, oa::I32 inHiddenSize, oa::U32 inTimeOffset = 0, oa::U32 inBatchStride = 1)RnnScanResult oa::FnMatrix::rnnScan(const Matrix & inGatesI, const Matrix & inWeightHh, oa::I32 inHiddenSize, oa::I32 inSeqLen, oa::I32 inBatch, const Matrix & inBiasHh = Matrix{})RnnScanBwdResult oa::FnMatrix::rnnScanBwd(const Matrix & inDOut, const Matrix & inGatesI, const Matrix & inHPrev, const Matrix & inWeightHh, oa::I32 inHiddenSize, oa::I32 inSeqLen, oa::I32 inBatch, const Matrix & inBiasHh = Matrix{})Matrix oa::FnMatrix::sampleLogits(const Matrix & inLogits, oa::F32 inTemperature = 1.0F, oa::I32 inTopK = 0, oa::F32 inTopP = 1.0F, oa::U64 inSeed = 0)Matrix oa::FnMatrix::scatterAddRows(const Matrix & inSource, const Matrix & inIndices, oa::I32 inOutRows)Matrix oa::FnMatrix::scatterRows(const Matrix & inSelf, const Matrix & inSource, const Matrix & inRowMap, const Matrix & inCount)Matrix oa::FnMatrix::scatterRowsBwdSource(const Matrix & inGradOut, const Matrix & inRowMap, const Matrix & inCount)oa::Matrix oa::FnMatrix::slice(const oa::Matrix & inSelf, oa::I32 inDim, oa::I64 inStart, oa::I64 inEnd)Matrix oa::FnMatrix::sliceBwd(MatrixShape inInputShape, oa::I32 inDim, oa::I64 inStart, oa::I64 inEnd, const Matrix & inDOut)Matrix oa::FnMatrix::softmaxBwd(const Matrix & inForwardOutput, const Matrix & inGradOutput, oa::I32 inDim = -1)Matrix oa::FnMatrix::softmaxScaledMasked(const Matrix & inScores, const Matrix & inMask, oa::F32 inScale)Matrix oa::FnMatrix::softmaxScaledMaskedBwd(const Matrix & inForwardOutput, const Matrix & inGradOutput, oa::F32 inScale)oa::Vector<Matrix> oa::FnMatrix::split(const Matrix & inSelf, oa::Span<oa::I64> inSizes, oa::I32 inDim = 0)Matrix oa::FnMatrix::splitHeads(const Matrix & inX, oa::I32 inBatch, oa::I32 inSeqLen, oa::I32 inNumHeads)SwigluBwdResult oa::FnMatrix::swigluBwd(const Matrix & inGate, const Matrix & inUp, const Matrix & inOut, const Matrix & inGradOutput)oa::Matrix oa::FnMatrix::transpose(const oa::Matrix & inA, oa::I32 inDim0 = -2, oa::I32 inDim1 = -1)Matrix oa::FnMatrix::upsampleBwd(const Matrix & inInput, const Matrix & inDOut, oa::I32 inScaleFactor, bool inIsBilinear)Function Documentation
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inOtherconst Matrix &—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inScalaroa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inScalaroa::F32—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::I64The declared return value.
Parameters
inXconst Matrix &—
inKernelSizeoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inGradOutputconst Matrix &—
inKernelSizeoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inGammaconst Matrix &—
inBetaconst Matrix &—
inMeanconst Matrix &—
inVarconst Matrix &—
inOutconst Matrix &—
inDOutconst Matrix &—
inEpsoa::F32—
inIsTrainingbool—
Returns
BatchNorm2dBwdResultThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst Matrix &—
inBconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst Matrix &—
inBconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inSrcconst Matrix &—
inDtypeoa::ScalarType—
Returns
MatrixThe declared return value.
Parameters
inSrcconst Matrix &—
outDstMatrix &—
Returns
voidThe declared return value.
Parameters
inLogitsconst Matrix &—
inLabelsconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inSeqLenoa::I64—
Returns
MatrixThe declared return value.
Parameters
inGradOutconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inBatchoa::I32—
inChannelsoa::I32—
inSeqLenoa::I32—
inEpsoa::F32—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inGradOutputconst Matrix &—
inBatchoa::I32—
inChannelsoa::I32—
inSeqLenoa::I32—
inEpsoa::F32—
Returns
ChannelNormBwdResultThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inBatchoa::I32—
inChannelsoa::I32—
inSeqLenoa::I32—
inEpsoa::F32—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inFwdOutconst Matrix &—
inGradOutputconst Matrix &—
inBatchoa::I32—
inChannelsoa::I32—
inSeqLenoa::I32—
inEpsoa::F32—
Returns
ChannelNormBwdResultThe declared return value.
Parameters
inAconst oa::Matrix &—
inMaxoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inMinoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inDColsconst Matrix &—
inNoa::I32—
inCoa::I32—
inLoa::I32—
inKoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
inDilationoa::I32—
inOutLoa::I32—
Returns
MatrixThe declared return value.
Parameters
inSelfconst Matrix &—
inMaskconst Matrix &—
Returns
CompactRowsResultThe declared return value.
Matrix oa::FnMatrix::compactRowsBwd(
const Matrix & inGradOut,
const Matrix & inRowMap,
const Matrix & inCount,
MatrixShape inInputShape
)
Matrix oa::FnMatrix::compactRowsBwd(
const Matrix & inGradOut,
const Matrix & inRowMap,
const Matrix & inCount,
const Matrix & inDispatchArgs,
MatrixShape inInputShape
)Parameters
inGradOutconst Matrix &—
inRowMapconst Matrix &—
inCountconst Matrix &—
inInputShapeMatrixShape—
Returns
MatrixThe declared return value.
Parameters
inInputsoa::Span<Matrix>—
inDimoa::I32Default: 0
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inDilationoa::U32—
inInputShapeconst MatrixShape &—
Returns
MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inDilationoa::U32—
Returns
Conv1dBwdWeightResultThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inStrideoa::I32Default: 1
inPaddingoa::I32Default: 0
inDilationoa::I32Default: 1
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inStrideoa::I32Default: 1
inPaddingoa::I32Default: 0
inDilationoa::I32Default: 1
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inGroupsoa::U32Default: 1
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inInputShapeconst MatrixShape &—
inGroupsoa::U32Default: 1
Returns
MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inGroupsoa::U32Default: 1
Returns
Conv2dBwdWeightResultThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
inInputShapeconst MatrixShape &—
Returns
MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inDOutconst Matrix &—
inWeightconst Matrix &—
inStrideoa::U32—
inPaddingoa::U32—
Returns
ConvTranspose2dBwdWeightResultThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSrcconst Matrix &—
outHostvoid *—
inBytesoa::U64—
Returns
oa::StatusThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst oa::QuantMatrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inOtherconst Matrix &—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inScalaroa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inScalaroa::F32—
Returns
voidThe declared return value.
Parameters
inAconst Matrix &—
inPoa::F32—
inSeedoa::U64Default: 0
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inAlphaoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
inAlphaoa::F32Default: 1.0f
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
inPlacementoa::MemoryPlacementDefault: oa::MemoryPlacement::Auto
Returns
MatrixThe declared return value.
Parameters
inDdAconst Matrix &—
inDtconst Matrix &—
inAFlooroa::F32—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inDdAconst Matrix &—
inDtconst Matrix &—
inAFlooroa::F32—
Returns
EmpyrealmAdtBwdResultThe declared return value.
Parameters
inXconst Matrix &—
inDtMinoa::F32—
inDtMaxoa::F32—
Returns
MatrixThe declared return value.
Parameters
inDtRawconst Matrix &—
inDdAconst Matrix &—
inDtMinoa::F32—
inDtMaxoa::F32—
inAFlooroa::F32—
Returns
EmpyrealmDtAdtResultThe declared return value.
Parameters
inDOutconst Matrix &—
inXconst Matrix &—
inDtMinoa::F32—
inDtMaxoa::F32—
Returns
MatrixThe declared return value.
Parameters
inProjectedconst Matrix &—
inDtBiasconst Matrix &—
inConfigconst Mamba3PreprocessConfig &—
Returns
Mamba3PreprocessResultThe declared return value.
Mamba3PreprocessBwdResult oa::FnMatrix::empyrealmPreprocessBwd(
const Matrix & inProjected,
const Matrix & inDtBias,
const Matrix & inDZ,
const Matrix & inDX,
const Matrix & inDBh,
const Matrix & inDCh,
const Matrix & inDDT,
const Matrix & inDADT,
const Matrix & inDTrap,
const Matrix & inDAngle,
const Mamba3PreprocessConfig & inConfig
)Parameters
inProjectedconst Matrix &—
inDtBiasconst Matrix &—
inDZconst Matrix &—
inDXconst Matrix &—
inDBhconst Matrix &—
inDChconst Matrix &—
inDDTconst Matrix &—
inDADTconst Matrix &—
inDTrapconst Matrix &—
inDAngleconst Matrix &—
inConfigconst Mamba3PreprocessConfig &—
Returns
Mamba3PreprocessBwdResultThe declared return value.
Matrix oa::FnMatrix::empyrealmSiso(
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const SsmConfig & inConfig
)Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
SsmBwdResult oa::FnMatrix::empyrealmSisoBwd(
const Matrix & inDOut,
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const SsmConfig & inConfig
)Parameters
inDOutconst Matrix &—
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inConfigconst SsmConfig &—
Returns
SsmBwdResultThe declared return value.
Matrix oa::FnMatrix::empyrealmSisoStep(
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const Matrix & inSsmState,
const Matrix & inAngleState,
const Matrix & inKState,
const Matrix & inVState,
const SsmConfig & inConfig
)Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inSsmStateconst Matrix &—
inAngleStateconst Matrix &—
inKStateconst Matrix &—
inVStateconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
Parameters
inAconst Matrix &—
inValueoa::F32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inShapeconst oa::MatrixShape &—
inValueoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfoa::Matrix &—
inValueoa::F32—
Returns
voidThe declared return value.
Parameters
inQconst Matrix &—
inKconst Matrix &—
inVconst Matrix &—
inScaleoa::F32—
Returns
MatrixThe declared return value.
Parameters
inQconst Matrix &—
inKconst Matrix &—
inVconst Matrix &—
inOutputconst Matrix &—
inLogSumExpconst Matrix &—
inGradOutputconst Matrix &—
inScaleoa::F32—
Returns
FlashAttentionBwdResultThe declared return value.
Parameters
inDataoa::Span<const oa::U8>—
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inDataoa::Span<const oa::I32>—
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: oa::ScalarType::Int32
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inValueoa::F64—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inSelfconst Matrix &—
inIndicesconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inIndicesconst Matrix &—
inGradOutputconst Matrix &—
inVocabSizeoa::I32—
inEmbedDimoa::I32—
Returns
MatrixThe declared return value.
Parameters
inSelfconst Matrix &—
inIndicesconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inGradOutconst Matrix &—
inIndicesconst Matrix &—
inInputWidthoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inIntermediateSizeoa::U32—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &forward INPUT (up||gate); up*GELU(gate) is not invertible
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &forward INPUT x (gelu'(x) is a function of input, not output)
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst Matrix &—
inValueoa::F32—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inOffsetsconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inXconst Matrix &—
inWeightconst Matrix &—
inOffsetsconst Matrix &—
Returns
GroupedGemmMBwdResultThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inOffsetsconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inOffsetsconst Matrix &—
inNumExpertsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inXconst Matrix &—
inWeightconst Matrix &—
inOffsetsconst Matrix &—
Returns
GroupedLinearMBwdResultThe declared return value.
Parameters
inGatesIconst Matrix &—
inHiddenconst Matrix &—
inWeightHhconst Matrix &—
inHiddenSizeoa::I32—
inTimeOffsetoa::U32—
inBatchStrideoa::U32—
inBiasHhconst Matrix &Default: Matrix{}
Returns
MatrixThe declared return value.
Parameters
inGatesIconst Matrix &[B, 3H] input projection (reset|update|candidate along dim 1) or [B*T, 3H] with inTimeOffset = t*B to index row t without Slice
inGatesHconst Matrix &[B, 3H] hidden projection
inHiddenconst Matrix &[B, H] previous hidden state
inHiddenSizeoa::I32H
inTimeOffsetoa::U32row offset into inGatesI (in units of 3H), default 0
inBatchStrideoa::U32Default: 1
Returns
MatrixThe declared return value.
Parameters
inGatesIconst Matrix &—
inGatesHconst Matrix &—
inHiddenconst Matrix &—
inGradOutputconst Matrix &—
inHiddenSizeoa::I32—
inTimeOffsetoa::U32row offset into inGatesI / dGatesI (in rows of 3H), default 0
inBatchStrideoa::U32row stride between batches in inGatesI (T for batch-major, 1 for contiguous), default 1
Returns
GruCellPointwiseBwdResultThe declared return value.
Parameters
inGatesIconst Matrix &[B*S, 3H] precomputed input projection (row b*S+t = timestep t)
inWeightHhconst Matrix &—
inHiddenSizeoa::I32—
inSeqLenoa::I32S
inBatchoa::I32—
inBiasHhconst Matrix &Default: Matrix{}
Returns
GruScanResultThe declared return value.
Parameters
inDOutconst Matrix &—
inGatesIconst Matrix &—
inHPrevconst Matrix &—
inWeightHhconst Matrix &—
inHiddenSizeoa::I32—
inSeqLenoa::I32—
inBatchoa::I32—
inBiasHhconst Matrix &Default: Matrix{}
Returns
GruScanBwdResultThe declared return value.
Parameters
inSelfconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inKoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
inDilationoa::I32Default: 1
Returns
MatrixThe declared return value.
Parameters
inSelfconst oa::Matrix &—
inWeightconst oa::Matrix &—
inBiasconst oa::Matrix &—
inEpsoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inOutconst Matrix &—
inMeanconst Matrix &—
inRstdconst Matrix &—
inGradOutputconst Matrix &—
inEpsoa::F32Default: 1e-5F
Returns
LayerNormBwdResultThe declared return value.
Parameters
inAconst oa::Matrix &—
inAlphaoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
inAlphaoa::F32Default: 0.01f
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &[batch, inFeatures]
inWeightconst Matrix &[outFeatures, inFeatures]
inBiasconst Matrix &[outFeatures] (optional)
Returns
MatrixThe declared return value.
Parameters
inGradOutputconst Matrix &—
inWeightconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inGradOutputconst Matrix &—
inWeightconst Matrix &—
inActivationconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inGradOutputconst Matrix &—
inWeightconst Matrix &—
inActivationconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inGradOutputconst Matrix &—
Returns
LinearWeightBiasBwdResultThe declared return value.
Parameters
inInputconst Matrix &—
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
inDimoa::I32Default: -1
Returns
MatrixThe declared return value.
Matrix oa::FnMatrix::mamba3Mimo(
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const Matrix & inMimoX,
const Matrix & inMimoZ,
const Matrix & inMimoO,
const Matrix & inNormWeight,
const SsmConfig & inConfig
)Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inMimoXconst Matrix &—
inMimoZconst Matrix &—
inMimoOconst Matrix &—
inNormWeightconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
Mamba3MimoBwdResult oa::FnMatrix::mamba3MimoBwd(
const Matrix & inDOut,
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const Matrix & inMimoX,
const Matrix & inMimoZ,
const Matrix & inMimoO,
const Matrix & inNormWeight,
const SsmConfig & inConfig
)Parameters
inDOutconst Matrix &—
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inMimoXconst Matrix &—
inMimoZconst Matrix &—
inMimoOconst Matrix &—
inNormWeightconst Matrix &—
inConfigconst SsmConfig &—
Returns
Mamba3MimoBwdResultThe declared return value.
Matrix oa::FnMatrix::mamba3MimoStep(
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const Matrix & inMimoX,
const Matrix & inMimoZ,
const Matrix & inMimoO,
const Matrix & inNormWeight,
const Matrix & inSsmState,
const Matrix & inAngleState,
const Matrix & inKState,
const Matrix & inVState,
const SsmConfig & inConfig
)Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inMimoXconst Matrix &—
inMimoZconst Matrix &—
inMimoOconst Matrix &—
inNormWeightconst Matrix &—
inSsmStateconst Matrix &—
inAngleStateconst Matrix &—
inKStateconst Matrix &—
inVStateconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
Parameters
inProjectedconst Matrix &—
inDtBiasconst Matrix &—
inConfigconst Mamba3PreprocessConfig &—
Returns
Mamba3PreprocessResultThe declared return value.
Mamba3PreprocessBwdResult oa::FnMatrix::mamba3PreprocessBwd(
const Matrix & inProjected,
const Matrix & inDtBias,
const Matrix & inDZ,
const Matrix & inDX,
const Matrix & inDBh,
const Matrix & inDCh,
const Matrix & inDDT,
const Matrix & inDADT,
const Matrix & inDTrap,
const Matrix & inDAngle,
const Mamba3PreprocessConfig & inConfig
)Parameters
inProjectedconst Matrix &—
inDtBiasconst Matrix &—
inDZconst Matrix &—
inDXconst Matrix &—
inDBhconst Matrix &—
inDChconst Matrix &—
inDDTconst Matrix &—
inDADTconst Matrix &—
inDTrapconst Matrix &—
inDAngleconst Matrix &—
inConfigconst Mamba3PreprocessConfig &—
Returns
Mamba3PreprocessBwdResultThe declared return value.
Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
SsmBwdResult oa::FnMatrix::mamba3SisoBwd(
const Matrix & inDOut,
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const SsmConfig & inConfig
)Parameters
inDOutconst Matrix &—
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inConfigconst SsmConfig &—
Returns
SsmBwdResultThe declared return value.
Matrix oa::FnMatrix::mamba3SisoStep(
const Matrix & inC,
const Matrix & inB,
const Matrix & inX,
const Matrix & inZ,
const Matrix & inAdt,
const Matrix & inDt,
const Matrix & inTrap,
const Matrix & inAngle,
const Matrix & inCBias,
const Matrix & inBBias,
const Matrix & inD,
const Matrix & inSsmState,
const Matrix & inAngleState,
const Matrix & inKState,
const Matrix & inVState,
const SsmConfig & inConfig
)Parameters
inCconst Matrix &—
inBconst Matrix &—
inXconst Matrix &—
inZconst Matrix &—
inAdtconst Matrix &—
inDtconst Matrix &—
inTrapconst Matrix &—
inAngleconst Matrix &—
inCBiasconst Matrix &—
inBBiasconst Matrix &—
inDconst Matrix &—
inSsmStateconst Matrix &—
inAngleStateconst Matrix &—
inKStateconst Matrix &—
inVStateconst Matrix &—
inConfigconst SsmConfig &—
Returns
MatrixThe declared return value.
Parameters
inLogitsconst Matrix &—
inLabelsconst Matrix &—
inMaskconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
inPrecisionoa::MatMulPrecisionDefault: oa::MatMulPrecision::Auto
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inMaxValueconst Matrix &—
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inKernelSizeoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
Returns
MaxPool2dResultThe declared return value.
Parameters
inXconst Matrix &—
inIndicesconst Matrix &—
inGradOutputconst Matrix &—
inKernelSizeoa::I32—
inStrideoa::I32—
inPaddingoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inXconst Matrix &—
inBatchoa::I32—
inSeqLenoa::I32—
inNumHeadsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &forward INPUT x (mish'(x) depends on x directly)
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inPackedconst Matrix &—
inRouteGateconst Matrix &—
inInverseconst Matrix &—
inPackedSlotconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inPackedconst Matrix &—
inRouteGateconst Matrix &—
inInverseconst Matrix &—
inPackedSlotconst Matrix &—
Returns
MoeCombineBwdResultThe declared return value.
Parameters
inExpertIndicesconst Matrix &—
inNumExpertsoa::I32—
Returns
MoeExpertPlanThe declared return value.
Parameters
inSelfconst Matrix &—
inIndicesconst Matrix &—
inInverseconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inSourceconst Matrix &—
inInverseconst Matrix &—
inOutRowsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inProbsconst Matrix &—
inExpertIndicesconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inDOutconst Matrix &—
inProbsconst Matrix &—
inExpertIndicesconst Matrix &—
inRouteWeightsconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inSelectionMaskconst Matrix &—
inOutBiasMatrix &—
inExpertsPerTokenoa::I32—
inGammaoa::F32—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inOtherconst Matrix &—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inMeanoa::F32Default: 0.0F
inStddevoa::F32Default: 1.0F
inSeedoa::U64Default: 0
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inLowoa::F32Default: 0.0F
inHighoa::F32Default: 1.0F
inSeedoa::U64Default: 0
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inExponentoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst oa::Matrix &—
inQuantizationoa::Quantization—
Returns
oa::QuantMatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst Matrix &—
inRepeatsoa::I32—
inDimoa::I32—
Returns
MatrixThe declared return value.
Parameters
inGradOutconst Matrix &—
inInputShapeMatrixShape—
inRepeatsoa::I32—
inDimoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inShapeoa::MatrixShape—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst Matrix &—
inBconst Matrix &—
inWeightconst Matrix &—
inEpsoa::F32—
Returns
ResidualRmsNormResultThe declared return value.
Parameters
inSelfconst oa::Matrix &—
inWeightconst oa::Matrix &—
inEpsoa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inGradOutputconst Matrix &—
inEpsoa::F32Default: 1e-5F
Returns
RmsNormBwdResultThe declared return value.
Parameters
inSelfconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inZconst Matrix &—
inEpsoa::F32—
inNormBeforeGateboolDefault: true
Returns
MatrixThe declared return value.
Parameters
inXconst Matrix &—
inWeightconst Matrix &—
inBiasconst Matrix &—
inZconst Matrix &—
inGradOutputconst Matrix &—
inEpsoa::F32—
Returns
RmsNormGatedBwdResultThe declared return value.
Parameters
inGatesIconst Matrix &—
inHiddenconst Matrix &—
inWeightHhconst Matrix &—
inTimeOffsetoa::U32Default: 0
inBatchStrideoa::U32Default: 1
inBiasHhconst Matrix &Default: Matrix{}
Returns
MatrixThe declared return value.
Parameters
inGatesIconst Matrix &[B, H] input projection (W_ih x + b_ih)
inGatesHconst Matrix &[B, H] hidden projection (W_hh h_prev + b_hh)
Returns
MatrixThe declared return value.
Parameters
inGatesIconst Matrix &—
inGatesHconst Matrix &—
inGradOutputconst Matrix &—
inHiddenSizeoa::I32—
inTimeOffsetoa::U32Default: 0
inBatchStrideoa::U32Default: 1
Returns
RnnCellPointwiseBwdResultThe declared return value.
Parameters
inGatesIconst Matrix &[B*S, H] precomputed input projection (row b*S+t = timestep t)
inWeightHhconst Matrix &—
inHiddenSizeoa::I32—
inSeqLenoa::I32—
inBatchoa::I32—
inBiasHhconst Matrix &Default: Matrix{}
Returns
RnnScanResultThe declared return value.
Parameters
inDOutconst Matrix &—
inGatesIconst Matrix &—
inHPrevconst Matrix &—
inWeightHhconst Matrix &—
inHiddenSizeoa::I32—
inSeqLenoa::I32—
inBatchoa::I32—
inBiasHhconst Matrix &Default: Matrix{}
Returns
RnnScanBwdResultThe declared return value.
Parameters
inLogitsconst Matrix &—
inTemperatureoa::F32Default: 1.0F
inTopKoa::I32Default: 0
inTopPoa::F32Default: 1.0F
inSeedoa::U64Default: 0
Returns
MatrixThe declared return value.
Parameters
inSrcconst Matrix &—
Returns
oa::F32The declared return value.
Parameters
inAconst oa::Matrix &—
inScalaroa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inScalaroa::F32—
Returns
voidThe declared return value.
Parameters
inSourceconst Matrix &—
inIndicesconst Matrix &—
inOutRowsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inSelfconst Matrix &—
inSourceconst Matrix &—
inRowMapconst Matrix &—
inCountconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inGradOutconst Matrix &—
inRowMapconst Matrix &—
inCountconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inSeedoa::U64—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &forward INPUT x (silu'(x) is a function of input, not output)
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inIntermediateSizeoa::U32—
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &forward INPUT (gate||up); the forward output is not invertible
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfconst oa::Matrix &—
inDimoa::I32—
inStartoa::I64—
inEndoa::I64—
Returns
oa::MatrixThe declared return value.
Parameters
inInputShapeMatrixShape—
inDimoa::I32—
inStartoa::I64—
inEndoa::I64—
inDOutconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
inDimoa::I32Default: -1
Returns
MatrixThe declared return value.
Parameters
inScoresconst Matrix &—
inMaskconst Matrix &—
inScaleoa::F32—
Returns
MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
inScaleoa::F32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &output y = softplus(a) from the forward pass
inGradOutputconst Matrix &—
Returns
MatrixdOut * sigmoid(a) = dOut * (1 - e^-y)
Parameters
inSelfconst Matrix &—
inSizesoa::Span<oa::I64>—
inDimoa::I32Default: 0
Returns
oa::Vector<Matrix>The declared return value.
Parameters
inXconst Matrix &—
inBatchoa::I32—
inSeqLenoa::I32—
inNumHeadsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inOtherconst Matrix &—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inScalaroa::F32—
Returns
oa::MatrixThe declared return value.
Parameters
inSelfMatrix &—
inScalaroa::F32—
Returns
voidThe declared return value.
Parameters
inAconst oa::Matrix &—
inDimoa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inBconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inGateconst Matrix &—
inUpconst Matrix &—
inOutconst Matrix &—
inGradOutputconst Matrix &—
Returns
SwigluBwdResultSwigluBwdResult with dGate, dUp
Parameters
inAconst oa::Matrix &—
Returns
oa::MatrixThe declared return value.
Parameters
inForwardOutputconst Matrix &—
inGradOutputconst Matrix &—
Returns
MatrixThe declared return value.
Parameters
inAconst Matrix &—
inKoa::I32—
inDimoa::I32Default: -1
Returns
TopKResultThe declared return value.
Parameters
inIndicesconst Matrix &—
inNumExpertsoa::I32—
Returns
MatrixThe declared return value.
Parameters
inAconst oa::Matrix &—
inDim0oa::I32Default: -2
inDim1oa::I32Default: -1
Returns
oa::MatrixThe declared return value.
Parameters
inInputconst Matrix &—
inDOutconst Matrix &—
inScaleFactoroa::I32—
inIsBilinearbool—
Returns
MatrixThe declared return value.
Parameters
inZeconst Matrix &—
inCodebookconst Matrix &—
Returns
VqAssignResultThe declared return value.
Parameters
inZeconst Matrix &—
inIdxconst Matrix &—
ioEmbedSumMatrix &—
ioClusterSizeMatrix &—
outCodebookMatrix &—
inDecayoa::F32—
inEpsoa::F32—
inDeadThresholdoa::F32—
inSeedoa::U32—
inNormalizebool—
Returns
voidThe declared return value.
Returns
oa::ScalarTypeThe declared return value.
Parameters
inShapeMatrixShape—
inDtypeoa::ScalarTypeDefault: weightDtype()
Returns
MatrixThe declared return value.