NVIDIA ISA Viewer

IMMA

Integer Matrix Multiply and Accumulate

4 variants on SM100 (B200)

IMMA
R,R,R,R
distilled: @P0 IMMA.INVALID0.U8.U8 R0, R0.ROW, R0.???0, R0 ;
key: IMMA_R_R_R_R
0123456701234567012345670123456701234567012345670123456701234567
111011000100predoperand 0operand 1operand 2000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 30modimodimodi 100SATmodi 2000000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
00000INVALID0
00001INVALID1
00010INVALID0.S8
00011INVALID1.S8
00100INVALID0.INVALID2
00101INVALID1.INVALID2
00110INVALID0.INVALID3
00111INVALID1.INVALID3
01000INVALID0.S8
01001INVALID1.S8
01010INVALID0.S8.S8
01011INVALID1.S8.S8
01100INVALID0.INVALID2.S8
01101INVALID1.INVALID2.S8
01110INVALID0.INVALID3.S8
01111INVALID1.INVALID3.S8
10000INVALID0.INVALID2
10001INVALID1.INVALID2
10010INVALID0.S8.INVALID2
10011INVALID1.S8.INVALID2
10100INVALID0.INVALID2.INVALID2
10101INVALID1.INVALID2.INVALID2
10110INVALID0.INVALID3.INVALID2
10111INVALID1.INVALID3.INVALID2
11000INVALID0.INVALID3
11001INVALID1.INVALID3
11010INVALID0.S8.INVALID3
11011INVALID1.S8.INVALID3
11100INVALID0.INVALID2.INVALID3
11101INVALID1.INVALID2.INVALID3
11110INVALID0.INVALID3.INVALID3
11111INVALID1.INVALID3.INVALID3

Modifier Group 2

BinaryValue
0000U8
0001INVALID4
0010INVALID4
0011INVALID4.INVALID4
0100INVALID2.U8
0101INVALID2.INVALID4
0110INVALID2.INVALID4
0111INVALID2.INVALID4.INVALID4
100016816.U8
100116816.INVALID4
101016816.INVALID4
101116816.INVALID4.INVALID4
1100INVALID6.U8
1101INVALID6.INVALID4
1110INVALID6.INVALID4
1111INVALID6.INVALID4.INVALID4

Operand 1 Modifiers

BinaryValue
0ROW
1???1

Operand 2 Modifiers

BinaryValue
0???0
1COL
IMMA
R,R,R,R,UP
distilled: @P0 IMMA.INVALID0.U8.U8 R0, R0.ROW, R0.???0, R0, UP6 ;
key: IMMA_R_R_R_R_UP
0123456701234567012345670123456701234567012345670123456701234567
111011000100predoperand 0operand 1operand 2000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 30modimodimodi 100SATmodi 21operand 400000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
00000INVALID0
00001INVALID1
00010INVALID0.S8
00011INVALID1.S8
00100INVALID0.INVALID2
00101INVALID1.INVALID2
00110INVALID0.INVALID3
00111INVALID1.INVALID3
01000INVALID0.S8
01001INVALID1.S8
01010INVALID0.S8.S8
01011INVALID1.S8.S8
01100INVALID0.INVALID2.S8
01101INVALID1.INVALID2.S8
01110INVALID0.INVALID3.S8
01111INVALID1.INVALID3.S8
10000INVALID0.INVALID2
10001INVALID1.INVALID2
10010INVALID0.S8.INVALID2
10011INVALID1.S8.INVALID2
10100INVALID0.INVALID2.INVALID2
10101INVALID1.INVALID2.INVALID2
10110INVALID0.INVALID3.INVALID2
10111INVALID1.INVALID3.INVALID2
11000INVALID0.INVALID3
11001INVALID1.INVALID3
11010INVALID0.S8.INVALID3
11011INVALID1.S8.INVALID3
11100INVALID0.INVALID2.INVALID3
11101INVALID1.INVALID2.INVALID3
11110INVALID0.INVALID3.INVALID3
11111INVALID1.INVALID3.INVALID3

Modifier Group 2

BinaryValue
0000U8
0001INVALID4
0010INVALID4
0011INVALID4.INVALID4
0100INVALID2.U8
0101INVALID2.INVALID4
0110INVALID2.INVALID4
0111INVALID2.INVALID4.INVALID4
100016816.U8
100116816.INVALID4
101016816.INVALID4
101116816.INVALID4.INVALID4
1100INVALID6.U8
1101INVALID6.INVALID4
1110INVALID6.INVALID4
1111INVALID6.INVALID4.INVALID4

Operand 1 Modifiers

BinaryValue
0ROW
1???1

Operand 2 Modifiers

BinaryValue
0???0
1COL
IMMA.SP
R,R,R,R,R,I
distilled: @P0 IMMA.SP.INVALID0.U8.U8 R0, R0.ROW, R0.???0, R0, R0, 0x0 ;
key: IMMA_R_R_R_R_R_I
0123456701234567012345670123456701234567012345670123456701234567
111011000100predoperand 0operand 1operand 2operand 4operand 50000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 31modimodimodi 100SATmodi 2000000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
00000INVALID0
00001INVALID1
00010INVALID0.S8
00011INVALID1.S8
00100INVALID0.INVALID2
00101INVALID1.INVALID2
00110INVALID0.INVALID3
00111INVALID1.INVALID3
01000INVALID0.S8
01001INVALID1.S8
01010INVALID0.S8.S8
01011INVALID1.S8.S8
01100INVALID0.INVALID2.S8
01101INVALID1.INVALID2.S8
01110INVALID0.INVALID3.S8
01111INVALID1.INVALID3.S8
10000INVALID0.INVALID2
10001INVALID1.INVALID2
10010INVALID0.S8.INVALID2
10011INVALID1.S8.INVALID2
10100INVALID0.INVALID2.INVALID2
10101INVALID1.INVALID2.INVALID2
10110INVALID0.INVALID3.INVALID2
10111INVALID1.INVALID3.INVALID2
11000INVALID0.INVALID3
11001INVALID1.INVALID3
11010INVALID0.S8.INVALID3
11011INVALID1.S8.INVALID3
11100INVALID0.INVALID2.INVALID3
11101INVALID1.INVALID2.INVALID3
11110INVALID0.INVALID3.INVALID3
11111INVALID1.INVALID3.INVALID3

Modifier Group 2

BinaryValue
0000U8
0001INVALID4
0010INVALID4
0011INVALID4.INVALID4
0100INVALID2.U8
0101INVALID2.INVALID4
0110INVALID2.INVALID4
0111INVALID2.INVALID4.INVALID4
1000INVALID4.U8
1001INVALID4.INVALID4
1010INVALID4.INVALID4
1011INVALID4.INVALID4.INVALID4
110016864.U8
110116864.INVALID4
111016864.INVALID4
111116864.INVALID4.INVALID4

Operand 1 Modifiers

BinaryValue
0ROW
1???1

Operand 2 Modifiers

BinaryValue
0???0
1COL
IMMA.SP
R,R,R,R,UP,R,I
distilled: @P0 IMMA.SP.INVALID0.U8.U8 R0, R0.ROW, R0.???0, R0, UP6, R0, 0x0 ;
key: IMMA_R_R_R_R_UP_R_I
0123456701234567012345670123456701234567012345670123456701234567
111011000100predoperand 0operand 1operand 2operand 5operand 60000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 31modimodimodi 100SATmodi 21operand 400000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
00000INVALID0
00001INVALID1
00010INVALID0.S8
00011INVALID1.S8
00100INVALID0.INVALID2
00101INVALID1.INVALID2
00110INVALID0.INVALID3
00111INVALID1.INVALID3
01000INVALID0.S8
01001INVALID1.S8
01010INVALID0.S8.S8
01011INVALID1.S8.S8
01100INVALID0.INVALID2.S8
01101INVALID1.INVALID2.S8
01110INVALID0.INVALID3.S8
01111INVALID1.INVALID3.S8
10000INVALID0.INVALID2
10001INVALID1.INVALID2
10010INVALID0.S8.INVALID2
10011INVALID1.S8.INVALID2
10100INVALID0.INVALID2.INVALID2
10101INVALID1.INVALID2.INVALID2
10110INVALID0.INVALID3.INVALID2
10111INVALID1.INVALID3.INVALID2
11000INVALID0.INVALID3
11001INVALID1.INVALID3
11010INVALID0.S8.INVALID3
11011INVALID1.S8.INVALID3
11100INVALID0.INVALID2.INVALID3
11101INVALID1.INVALID2.INVALID3
11110INVALID0.INVALID3.INVALID3
11111INVALID1.INVALID3.INVALID3

Modifier Group 2

BinaryValue
0000U8
0001INVALID4
0010INVALID4
0011INVALID4.INVALID4
0100INVALID2.U8
0101INVALID2.INVALID4
0110INVALID2.INVALID4
0111INVALID2.INVALID4.INVALID4
1000INVALID4.U8
1001INVALID4.INVALID4
1010INVALID4.INVALID4
1011INVALID4.INVALID4.INVALID4
110016864.U8
110116864.INVALID4
111016864.INVALID4
111116864.INVALID4.INVALID4

Operand 1 Modifiers

BinaryValue
0ROW
1???1

Operand 2 Modifiers

BinaryValue
0???0
1COL