imm_atomic_consume (sm5 - asm)

Secara atomik mengurangi penghitung 32-bit tersembunyi yang disimpan dengan tampilan Akses tidak berurut Hitungan atau Tambahkan (UAV), mengembalikan nilai baru.

imm_atomic_consume dest[.single_component_mask], dstUAV
Item Deskripsi
Dest
[in] Berisi nilai penghitung asli yang dikembalikan.
dstUAV
[in] Buffer terstruktur UAV dengan bendera Hitung atau Tambahkan.

Keterangan

Lihat imm_atomic_alloc untuk diskusi tentang validitas nilai jumlah yang dikembalikan tergantung pada apakah UAV adalah Count atau Append. Hal yang sama berlaku untuk imm_atomic_consume.

imm_atomic_consume melakukan penurunan atom dari nilai penghitung, mengembalikan nilai baru untuk tujuan.

Tidak ada penjepitan hitungan, sehingga membungkus aliran bawah.

Shader yang sama tidak dapat mencoba imm_atomic_alloc dan imm_atomic_consume pada UAV yang sama. Selanjutnya, GPU tidak dapat mengizinkan beberapa pemanggilan shader untuk mencampur imm_atomic_alloc dan imm_atomic_consume pada UAV yang sama.

Instruksi ini berlaku untuk tahap shader berikut:

Puncak Hull Domain Geometri Pixel Compute
X X

Karena UAV tersedia di semua tahap shader untuk Direct3D 11.1, instruksi ini berlaku untuk semua tahap shader untuk runtime Direct3D 11.1, yang tersedia dimulai dengan Windows 8.

Puncak Hull Domain Geometri Pixel Compute
X X X X X X

Minimum Shader Model

Instruksi ini didukung dalam model shader berikut:

Shader Model Didukung
Model Shader 5 ya
Model Shader 4.1 tidak
Model Shader 4 tidak
Shader Model 3 (DirectX HLSL) tidak
Shader Model 2 (DirectX HLSL) tidak
Shader Model 1 (DirectX HLSL) tidak

Shader Model 5 Assembly (DirectX HLSL)