Modello HLSL Shader 6.4
Descrive gli intrinseci di Machine Learning aggiunti a HLSL Shader Model 6.4.
Modello shader 6.4
Questi intrinseci sono una funzionalità necessaria/supportata del modello Shader 6.4. Di conseguenza, non è necessario alcun controllo di bit separato, oltre a garantire l'uso di Shader Model 6.4. Il client minimo supportato per queste routine è Windows 10, versione 1903.
Intrinseci del linguaggio di ombreggiatura
Intero senza segno Dot-Product di 4 elementi e accumula
uint32 dot4add_u8packed(uint32 a, uint32 b, uint32 acc); // ubyte4 a, b;
Intero senza segno a 4 dimensioni con dot-product con aggiunta. Moltiplica insieme ogni coppia corrispondente di byte senza segno a 8 bit nei due DWORD di input e somma i risultati nell'accumulatore intero senza segno a 32 bit. Questa istruzione funziona all'interno di una singola simd a 32 bit. Si presuppone che gli input siano anche quantità a 32 bit.
Intero firmato Dot-Product di 4 elementi e accumula
int32 dot4add_i8packed(uint32 a, uint32 b, int32 acc); // signed byte4 a, b;
Intero con segno a 4 dimensioni con punto punto con aggiunta. Moltiplica insieme ogni coppia corrispondente di byte con segno a 8 bit nei due DWORD di input e somma i risultati nell'accumulatore intero con segno a 32 bit. Questa istruzione funziona all'interno di una singola simd a 32 bit. Si presuppone che gli input siano anche quantità a 32 bit.
Dot-Product a virgola mobile a precisione singola e accumulare
float dot2add( half2 a, half2 b, float acc );
Prodotto a virgola mobile a 2 dimensioni di vettori metà2 con aggiunta. Moltiplica gli elementi dei due vettori di input float a metà precisione e somma i risultati nell'accumulatore float a 32 bit. Queste istruzioni funzionano all'interno di una singola simd a 32 bit. Gli input sono quantità a 16 bit confezionate nella stessa corsia.
Questa operazione è coperta sotto il bit di funzionalità a bassa precisione (che indica che sono presenti la metà nativa e il supporto breve).
SV_ShadingRate
uint shadingRate : SV_ShadingRate
Intero senza segno che rappresenta il numero di pixel di destinazione scritti da ogni chiamata del pixel shader. I valori validi appartengono al set di valori di enumerazione D3D12_SHADING_RATE.
Questo valore di sistema è disponibile su piattaforme D3D12_VARIABLE_SHADING_RATE_TIER_2 o successive. Può essere scritto dalla maggior parte dei vertici o delle fasi geometry shader. Può essere letto dalla fase pixel shader. Per altre informazioni, vedere Shading a frequenza variabile.