BMMA
Bit Matrix Multiply and Accumulate
2 variants on SM90 (H100)
BMMA
R,R,R,R
distilled:
@P0 BMMA.88128.???0.???0 R0, R0.ROW, R0.???0, R0 ;key:
BMMA_R_R_R_R| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | pred | operand 0 | operand 1 | operand 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| operand 3 | 0 | modi | modi | modi 1 | modi 2 | 0 | modi 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | stall | y | r-bar | w-bar | b-mask | reuse | 0 | 0 | ||||||||||||||||||||||||
Modifier Group 1
| Binary | Value |
|---|---|
| 00 | 88128 |
| 01 | 168128 |
| 10 | 168256 |
| 11 | INVALID3 |
Modifier Group 2
| Binary | Value |
|---|---|
| 00 | ???0 |
| 01 | ???1 |
| 10 | AND |
| 11 | ???3 |
Modifier Group 3
| Binary | Value |
|---|---|
| 0 | ???0 |
| 1 | POPC |
Operand 1 Modifiers
| Binary | Value |
|---|---|
| 0 | ROW |
| 1 | ???1 |
Operand 2 Modifiers
| Binary | Value |
|---|---|
| 0 | ???0 |
| 1 | COL |
BMMA
R,R,R,R,UP
distilled:
@P0 BMMA.88128.???0.???0 R0, R0.ROW, R0.???0, R0, UP6 ;key:
BMMA_R_R_R_R_UP| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | pred | operand 0 | operand 1 | operand 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| operand 3 | 0 | modi | modi | modi 1 | modi 2 | 0 | modi 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | operand 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | stall | y | r-bar | w-bar | b-mask | reuse | 0 | 0 | ||||||||||||||||||||||||||
Modifier Group 1
| Binary | Value |
|---|---|
| 00 | 88128 |
| 01 | 168128 |
| 10 | 168256 |
| 11 | INVALID3 |
Modifier Group 2
| Binary | Value |
|---|---|
| 00 | ???0 |
| 01 | ???1 |
| 10 | AND |
| 11 | ???3 |
Modifier Group 3
| Binary | Value |
|---|---|
| 0 | ???0 |
| 1 | POPC |
Operand 1 Modifiers
| Binary | Value |
|---|---|
| 0 | ROW |
| 1 | ???1 |
Operand 2 Modifiers
| Binary | Value |
|---|---|
| 0 | ???0 |
| 1 | COL |