Compartilhar via


imm_atomic_consume (sm5 – asm)

Diminuição atômica do contador oculto de 32 bits armazenado com uma exibição de acesso não ordenado Count ou Append (UAV), retornando o novo valor.

imm_atomic_consume dest[.single_component_mask], dstUAV
Item Descrição
Dest
[in] Contém o valor do contador original retornado.
dstUAV
[in] Um UAV de buffer estruturado com o sinalizador Count ou Append.

Comentários

Consulte imm_atomic_alloc para obter uma discussão sobre a validade do valor de contagem retornado, dependendo se o UAV é Count ou Append. O mesmo se aplica a imm_atomic_consume.

imm_atomic_consume faz um decremento atômico do valor do contador, retornando o novo valor para dest.

Não há nenhuma fixação da contagem, portanto, ela encapsula no fluxo inferior.

O mesmo sombreador não pode tentar imm_atomic_alloc e imm_atomic_consume no mesmo UAV. Além disso, a GPU não pode permitir que várias invocações de sombreador misture imm_atomic_alloc e imm_atomic_consume no mesmo UAV.

Esta instrução se aplica aos seguintes estágios de sombreador:

Vértice Casco Domínio Geometry Pixel Computação
X X

Como os UAVs estão disponíveis em todos os estágios de sombreador para Direct3D 11.1, essa instrução se aplica a todos os estágios de sombreador para o runtime do Direct3D 11.1, que está disponível a partir do Windows 8.

Vértice Casco Domínio Geometry Pixel Computação
X X X X X X

Modelo de sombreador mínimo

Esta instrução tem suporte nos seguintes modelos de sombreador:

Modelo de Sombreador Com suporte
Modelo de sombreador 5 sim
Modelo de sombreador 4.1 não
Modelo de sombreador 4 não
Modelo de Sombreador 3 (DirectX HLSL) não
Modelo de Sombreador 2 (DirectX HLSL) não
Modelo de Sombreador 1 (DirectX HLSL) não

Assembly do Modelo de Sombreador 5 (DirectX HLSL)