HMMA
Matrix Multiply and Accumulate
2 variants on SM80 (A100)
HMMA
R,R,R,R
distilled:
@P0 HMMA.1688.F16 R0, R0, R0, R0 ;key:
HMMA_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 |
| 0 | 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 | cNEG | ||||||||||||||||||||||||
| 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 | cNEG | 0 | 0 | modi 1 | modi 2 | 0 | modi 3 | 0 | 0 | 0 | modi 4 | 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 |
|---|---|
| 0 | 1688 |
| 1 | 16816 |
Modifier Group 2
| Binary | Value |
|---|---|
| 0 | F16 |
| 1 | F32 |
Modifier Group 3
| Binary | Value |
|---|---|
| 0 | 1688 |
| 1 | 1684 |
Modifier Group 4
| Binary | Value |
|---|---|
| 00 | (default) |
| 01 | BF16 |
| 10 | TF32 |
| 11 | INVALID3 |
HMMA.SP
R,R,R,R,R,I
distilled:
@P0 HMMA.SP.1688.F16 R0, R0, R0, R0, R0, 0x0 ;key:
HMMA_R_R_R_R_R_I| 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 |
| 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | pred | operand 0 | operand 1 | operand 2 | operand 4 | operand 5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | cNEG | |||||||||||||||||||||||||||||||||
| 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 | cNEG | 1 | 0 | modi 1 | modi 2 | 0 | modi 3 | 0 | 0 | 0 | modi 4 | 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 |
|---|---|
| 0 | 1688 |
| 1 | 16816 |
Modifier Group 2
| Binary | Value |
|---|---|
| 0 | F16 |
| 1 | F32 |
Modifier Group 3
| Binary | Value |
|---|---|
| 0 | 1688 |
| 1 | INVALID2 |
Modifier Group 4
| Binary | Value |
|---|---|
| 00 | (default) |
| 01 | BF16 |
| 10 | TF32 |
| 11 | INVALID3 |