NVIDIA ISA Viewer

ATOM

Atomic Operation on Generic Memory

10 variants on SM90 (H100)

ATOM
P,R,[R],R
distilled: @P0 ATOM.ADD.EF P0, R0, [R0], R0 ;
key: ATOM_P_R_R_R
0123456701234567012345670123456701234567012345670123456701234567
010100011100predoperand 1operand 2operand 3000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
00000000Emodi 10modi 2operand 0modi 3modi 400000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011S64
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0000ADD
0001MIN
0010MAX
0011INC
0100DEC
0101AND
0110OR
0111XOR
1000EXCH
1001INVALID9
1010INVALID10
1011INVALID11
1100INVALID12
1101INVALID13
1110INVALID14
1111INVALID15
ATOM
P,R,[R+I],R
distilled: @P0 ATOM.ADD.EF P0, R0, [R0+0x1], R0 ;
key: ATOM_P_R_R_I_R
0123456701234567012345670123456701234567012345670123456701234567
010100011100predoperand 1operand 2operand 4operand 3
0123456701234567012345670123456701234567012345670123456701234567
00000000Emodi 10modi 2operand 0modi 3modi 400000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011S64
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0000ADD
0001MIN
0010MAX
0011INC
0100DEC
0101AND
0110OR
0111XOR
1000EXCH
1001INVALID9
1010INVALID10
1011INVALID11
1100INVALID12
1101INVALID13
1110INVALID14
1111INVALID15
ATOM
P,R,[R],R,R
distilled: @P0 ATOM.CAS.EF P0, R0, [R0], R0, R0 ;
key: ATOM_P_R_R_R_R
0123456701234567012345670123456701234567012345670123456701234567
110100011100predoperand 1operand 2operand 3000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 4Emodi 10modi 2operand 0modi 3modi 400000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011INVALID3
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0CAS
1CAST
ATOM
P,R,[R+I],R,R
distilled: @P0 ATOM.CAS.EF P0, R0, [R0+0x1], R0, R0 ;
key: ATOM_P_R_R_I_R_R
0123456701234567012345670123456701234567012345670123456701234567
110100011100predoperand 1operand 2operand 4operand 3
0123456701234567012345670123456701234567012345670123456701234567
operand 5Emodi 10modi 2operand 0modi 3modi 400000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011INVALID3
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0CAS
1CAST
ATOM
P,R,[R+UR],R
distilled: @P0 ATOM.ADD.EF P0, R0, [R0.U32+UR0], R0 ;
key: ATOM_P_R_R_UR_R
0123456701234567012345670123456701234567012345670123456701234567
010100011001predoperand 1operand 2operand 4000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 30Emodi 10modi 2operand 0modi 3modi 410000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011S64
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0000ADD
0001MIN
0010MAX
0011INC
0100DEC
0101AND
0110OR
0111XOR
1000EXCH
1001INVALID9
1010INVALID10
1011INVALID11
1100INVALID12
1101INVALID13
1110INVALID14
1111INVALID15
ATOM
P,R,[R+UR+I],R
distilled: @P0 ATOM.ADD.EF P0, R0, [R0.U32+UR0+0x1], R0 ;
key: ATOM_P_R_R_UR_I_R
0123456701234567012345670123456701234567012345670123456701234567
010100011001predoperand 1operand 2operand 5operand 4
0123456701234567012345670123456701234567012345670123456701234567
operand 30Emodi 10modi 2operand 0modi 3modi 410000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
000(default)
001S32
01064
011S64
100128
101INVALID5
110INVALID6
111INVALID7

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
0000ADD
0001MIN
0010MAX
0011INC
0100DEC
0101AND
0110OR
0111XOR
1000EXCH
1001INVALID9
1010INVALID10
1011INVALID11
1100INVALID12
1101INVALID13
1110INVALID14
1111INVALID15
ATOM.ADD.RN
P,R,[R],R
distilled: @P0 ATOM.ADD.EF.F16x2.RN P0, R0, [R0], R0 ;
key: ATOM_P_R_R_R
0123456701234567012345670123456701234567012345670123456701234567
010001011100predoperand 1operand 2operand 3000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
00000000Emodi 1modi 2operand 0modi 3modi 4000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
0000F16x2
0001F16x4
0010F16x8
0011BF16x2
0100BF16x4
0101BF16x8
0110INVALID6
0111INVALID7
1000INVALID8
1001F32.FTZ
1010F32x2.FTZ
1011F32x4.FTZ
1100F32
1101F32x2
1110F32x4
1111F64

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
000F16x2.RN
001INVALID16
010MIN.F16x2.RN
011MIN.INVALID16
100MAX.F16x2.RN
101MAX.INVALID16
110INVALID3.F16x2.RN
111INVALID3.INVALID16
ATOM.ADD.RN
P,R,[R+I],R
distilled: @P0 ATOM.ADD.EF.F16x2.RN P0, R0, [R0+0x1], R0 ;
key: ATOM_P_R_R_I_R
0123456701234567012345670123456701234567012345670123456701234567
010001011100predoperand 1operand 2operand 4operand 3
0123456701234567012345670123456701234567012345670123456701234567
00000000Emodi 1modi 2operand 0modi 3modi 4000000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
0000F16x2
0001F16x4
0010F16x8
0011BF16x2
0100BF16x4
0101BF16x8
0110INVALID6
0111INVALID7
1000INVALID8
1001F32.FTZ
1010F32x2.FTZ
1011F32x4.FTZ
1100F32
1101F32x2
1110F32x4
1111F64

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
000F16x2.RN
001INVALID16
010MIN.F16x2.RN
011MIN.INVALID16
100MAX.F16x2.RN
101MAX.INVALID16
110INVALID3.F16x2.RN
111INVALID3.INVALID16
ATOM.ADD.RN
P,R,[R+UR],R
distilled: @P0 ATOM.ADD.EF.F16x2.RN P0, R0, [R0.U32+UR0], R0 ;
key: ATOM_P_R_R_UR_R
0123456701234567012345670123456701234567012345670123456701234567
010001011001predoperand 1operand 2operand 4000000000000000000000000
0123456701234567012345670123456701234567012345670123456701234567
operand 30Emodi 1modi 2operand 0modi 3modi 4010000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
0000F16x2
0001F16x4
0010F16x8
0011BF16x2
0100BF16x4
0101BF16x8
0110INVALID6
0111INVALID7
1000INVALID8
1001F32.FTZ
1010F32x2.FTZ
1011F32x4.FTZ
1100F32
1101F32x2
1110F32x4
1111F64

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
000F16x2.RN
001INVALID16
010MIN.F16x2.RN
011MIN.INVALID16
100MAX.F16x2.RN
101MAX.INVALID16
110INVALID3.F16x2.RN
111INVALID3.INVALID16
ATOM.ADD.RN
P,R,[R+UR+I],R
distilled: @P0 ATOM.ADD.EF.F16x2.RN P0, R0, [R0.U32+UR0+0x1], R0 ;
key: ATOM_P_R_R_UR_I_R
0123456701234567012345670123456701234567012345670123456701234567
010001011001predoperand 1operand 2operand 5operand 4
0123456701234567012345670123456701234567012345670123456701234567
operand 30Emodi 1modi 2operand 0modi 3modi 4010000000000000stallyr-barw-barb-maskreuse00

Modifier Group 1

BinaryValue
0000F16x2
0001F16x4
0010F16x8
0011BF16x2
0100BF16x4
0101BF16x8
0110INVALID6
0111INVALID7
1000INVALID8
1001F32.FTZ
1010F32x2.FTZ
1011F32x4.FTZ
1100F32
1101F32x2
1110F32x4
1111F64

Modifier Group 2

BinaryValue
0000(default)
0001CONSTANT.PRIVATE
0010CONSTANT.CTA
0011CONSTANT.CTA.PRIVATE
0100STRONG.SM.PRIVATE
0101STRONG.SM
0110STRONG.GPU.PRIVATE
0111STRONG.GPU
1000MMIO.GPU
1001CONSTANT.SM
1010STRONG.SYS
1011CONSTANT.SM.PRIVATE
1100MMIO.SYS
1101CONSTANT.VC
1110CONSTANT.VC.PRIVATE
1111CONSTANT.GPU

Modifier Group 3

BinaryValue
000EF
001(default)
010EL
011LU
100EU
101NA
110INVALID6
111INVALID7

Modifier Group 4

BinaryValue
000F16x2.RN
001INVALID16
010MIN.F16x2.RN
011MIN.INVALID16
100MAX.F16x2.RN
101MAX.INVALID16
110INVALID3.F16x2.RN
111INVALID3.INVALID16