pmxvi4ger8
Prefixed Masked VSX Vector Integer 4-bit GER
Masked 4-bit integer matrix multiply.
Details
Performs a masked unsigned 4-bit integer matrix multiplication with rank-8 accumulation using separate row and column masks. This prefixed MMA instruction multiplies 4-bit elements from two VSX registers and adds the partial products to an MMA accumulator, with XMSK controlling which rows and YMSK controlling which columns participate. The result is treated as unsigned.
Pseudocode Operation
AT ← ACC[AT] + ((XA & XMSK) × (XB & YMSK))
Programming Note
The pmxvi4ger8 instruction is useful for performing masked vector integer operations, multiplying and accumulating products of signed integers from two vectors based on a mask. Ensure that the mask registers (XMSK, YMSK) are correctly set to control which elements are processed. The operation requires proper alignment of VSX registers, and results are clamped to 32-bit signed integers to prevent overflow. This instruction operates at privilege level 0.
Example
Encoding
Operands
-
AT
Accumulator -
XA
Src A -
XB
Src B -
XMSK
Mask A -
YMSK
Mask B