imm _ atomic _ imin (sm5 - asm)

Sofortige atomare Min. in Arbeitsspeicher mit Vorzeichen. Gibt den Wert im Arbeitsspeicher vor dem max-Vorgang zurück.

imm _ atomic _ imin dst0 [ .single component mask , _ _ ] dst1, dstAddress [ .swizzle ] , src0 [ .select _ component]
Element Beschreibung
dst0
[in ] Enthält den Wert aus dst1 vor dieser Anweisung.
dst1
[in ] Einer ungeordneten Zugriffsansicht (UAV) (u # ). Im Compute-Shader kann es sich auch um freigegebenen Threadgruppenspeicher # (g) handelt.
dstAddress
[in ] Die Speicheradresse.
src0
[in ] Der Wert, der mit dst1 bei dstAddress verglichen werden soll.

Hinweise

Diesei-Anweisung führt einen 32-Bit-Vorzeichenwert der einzelnen Komponente des Operanden src0 mit dst1 bei 32-Bit pro Komponentenadresse dstAddress aus.

Wenn dst1 ein u # ist, wurde er möglicherweise als roh, typisiert oder strukturiert deklariert. Wenn sie typisiert ist, muss sie als UINT/SINT deklariert werden, wobei das gebundene Ressourcenformat R32 _ _ UINT/SINT ist.

Wenn dst1 g # ist, muss es als roh oder strukturiert deklariert werden.

Der Wert im dst1-Speicher vor min wird an dst0 zurückgegeben.

Die Anzahl der Von der Adresse entnommenen Komponenten wird durch die Dimensionalität von dst1 bestimmt.

Der gesamte Vorgang wird atomar ausgeführt.

Wenn der Shaderaufruf inaktiv ist, z. B. wenn das Pixel zuvor bei der Ausführung verworfen wurde oder ein Pixel-/Beispielaufruf nur als Hilfselement für ein echtes Pixel/Sample für Ableitungen dient, ändert diese Anweisung den dst1-Speicher überhaupt nicht, und der zurückgegebene Wert ist nicht definiert.

Die Adressierung außerhalb der Grenzen für u bewirkt, dass nichts in # den Arbeitsspeicher geschrieben wird, außer wenn das u strukturiert ist und der # Byteoffset in die Struktur (zweite Komponente der Adresse) den Zugriff außerhalb der Grenzen verursacht, dann wird der gesamte Inhalt des UAV nicht definiert.

Die Adressierung außerhalb der Grenzen für u # oder g # bewirkt, dass ein nicht definiertes Ergebnis an den Shader in dst0 zurückgegeben wird.

Diese Anweisung gilt für die folgenden Shaderstufen:

Scheitelpunkt Rumpf Domain Geometrie Pixel Compute
X X

Da UAVs in allen Shaderstufen für Direct3D 11.1 verfügbar sind, gilt diese Anweisung für alle Shaderstufen für die Direct3D 11.1-Runtime, die ab Windows 8 verfügbar ist.

Scheitelpunkt Rumpf Domain Geometrie Pixel Compute
X X X X X X

Shader-Mindestmodell

Diese Anweisung wird in den folgenden Shadermodellen unterstützt:

Shadermodell Unterstützt
Shadermodell 5 ja
Shadermodell 4.1 nein
Shadermodell 4 nein
Shadermodell 3 (DirectX HLSL) nein
Shadermodell 2 (DirectX HLSL) nein
Shadermodell 1 (DirectX HLSL) nein

Shadermodell 5-Assembly (DirectX HLSL)