Modelo de sombreador HLSL 6.4

Descreve os intrínsecos de machine learning adicionados ao Modelo de Sombreador HLSL 6.4.

Modelo de sombreador 6.4

Esses intrínsecos são um recurso obrigatório/com suporte do modelo de sombreador 6.4. Consequentemente, nenhum bit de funcionalidade separado marcar é necessário, além de assegurar o uso do Modelo de Sombreador 6.4. O cliente mínimo com suporte para essas rotinas é Windows 10, versão 1903.

Intrínsecos de linguagem de sombreamento

Inteiro sem sinal Dot-Product de 4 elementos e acumulação

uint32 dot4add_u8packed(uint32 a, uint32 b, uint32 acc); // ubyte4 a, b;

  Um ponto-produto inteiro sem sinal de 4 dimensões com adição. Multiplica cada par correspondente de bytes int de 8 bits sem sinal nos dois DWORDs de entrada e soma os resultados no acumulador inteiro sem sinal de 32 bits. Esta instrução opera em uma única pista simd de 32 bits de largura. As entradas também são consideradas quantidades de 32 bits.  

Inteiro com Sinal Dot-Product de 4 Elementos e Acumular

int32 dot4add_i8packed(uint32 a, uint32 b, int32 acc); // signed byte4 a, b;

Um inteiro com sinal 4 dot-product com adição. Multiplica cada par correspondente de bytes int assinados de 8 bits nos dois DWORDs de entrada e soma os resultados no acumulador inteiro com sinal de 32 bits. Esta instrução opera em uma única pista simd de 32 bits de largura. As entradas também são consideradas quantidades de 32 bits.  

Dot-Product de elemento flutuante de precisão única de 2 e acumulação

float dot2add( half2 a, half2 b, float acc );

Um ponto-produto de ponto flutuante bidimensional de metade de dois vetores com adição. Multiplica os elementos dos dois vetores de entrada float de meia precisão juntos e soma os resultados no acumulador float de 32 bits. Essas instruções operam em uma única pista simd de 32 bits de largura. As entradas são quantidades de 16 bits empacotadas na mesma pista.

Isso é abordado sob o bit de recurso de baixa precisão (indicando que a metade nativa e o suporte curto estão presentes).

SV_ShadingRate

uint shadingRate : SV_ShadingRate

Um inteiro sem sinal que representa quantos pixels de destino são gravados por cada invocação do sombreador de pixel. Os valores válidos pertencem ao conjunto de valores de enumeração D3D12_SHADING_RATE.

Esse valor do sistema está disponível em plataformas D3D12_VARIABLE_SHADING_RATE_TIER_2 ou superiores. Ele pode ser gravado em no máximo um dos estágios do sombreador de vértice ou geometria. Ele pode ser lido do estágio do sombreador de pixels. Para obter mais informações, consulte Sombreamento de taxa variável.