Partilhar via


WGF11 Streamout (WoW64)

Esse teste automatizado verifica se o comportamento de fluxo D3D de hardware/drivers gráficos atende às especificações do Microsoft Direct3D.

Este tópico se aplica aos seguintes trabalhos de teste:

  • WGF11 Streamout

  • WGF11 Streamout (WoW64)

Detalhes do teste

   
Especificações
  • Device.Graphics.AdapterRender.D3D111Core.D3D111CorePrimary
  • Device.Graphics.AdapterRender.D3D11Core.D3D11CorePrimary
  • Device.Graphics.AdapterRender.D3D101Core.D3D101CorePrimary
  • Device.Graphics.AdapterRender.D3D10Core.D3D10CorePrimary
Plataformas
  • Windows 10, edições de cliente (x64)
  • Windows Server 2016 (x64)
  • Windows 10, edições de cliente (Arm64)
Versões com suporte
  • Windows 10
  • Windows 10, versão 1511
  • Windows 10, versão 1607
  • Windows 10, versão 1703
  • Windows 10, versão 1709
  • Windows 10, versão 1803
  • Windows 10, versão 1809
  • Windows 10, versão 1903
  • Próxima atualização para Windows 10
Tempo de execução esperado (em minutos) 2
Categoria Compatibilidade
Tempo limite (em minutos) 120
Requer reinicialização false
Requer configuração especial false
Tipo automático

 

Documentação adicional

Os testes nessa área de recurso podem ter documentação adicional, incluindo pré-requisitos, configuração e informações de solução de problemas, que podem ser encontradas nos tópicos a seguir:

Executando o teste

Antes de executar o teste, conclua a configuração de teste conforme descrito nos requisitos de teste: Pré-requisitos de teste de adaptador gráfico ou chipset.

Solucionando problemas

Para solução de problemas genéricos de falhas de teste do HLK, consulte Solução de problemas de falhas de teste do Windows HLK.

Para obter informações de solução de problemas, consulte Solução de problemas de teste de device.graphics.

Todos os casos de teste retornam PASS ou FAIL. Examine os resultados do teste no arquivo de log para obter detalhes específicos sobre falhas. O teste poderá retornar SKIP se for executado com um nível de recurso que não dá suporte ao recurso que está sendo testado. O teste poderá retornar BLOCKED se houver uma exceção não capturada (a estrutura a capturará no final e a registrará em log). Para examinar os detalhes do teste, examine o log de teste do Gerenciador de HLK do Windows.

Mais informações

O seguinte descreve o Plano de Teste de Conformidade do StreamOut:

  • Casos gerais de teste do Stream Out

    • Passe dados de entrada para o pipeline usando o VB e transmita dados transformados do VS ou GS.

      Observação

         No caso do GS, considere problemas de amplificação emitindo mais de um primitivo de saída por primitivo de entrada.

       

    • Ciclo em diferentes tipos primitivos, tamanhos de buffer, contagens de emissão, deslocamentos de buffer de vand.

    • Teste o acréscimo de dados SO fazendo várias chamadas Draw().

    • Para GS, recicle em sombreadores com propriedades diferentes de "maxvertexcount".

      Ocasionalmente, transborde esse valor, certificando-se de que apenas primitivos completos sejam mantidos.

    • Possivelmente, recicle em diferentes tipos primitivos de entrada e topologias de saída.

    • Verificar os resultados esperados da consulta

      • STREAMOUTPUTSTATS

      • STREAMOVERFLOWPREDICATE

    • Testar gravações primitivas incompletas.

    • Testar a ordem de enrolamento e a manipulação de vértice à esquerda.

    • Até 227 vértices SO por buffer SO são permitidos.

      Observação

         Como esse é um recurso tão grande, isso funciona provavelmente para um ou dois casos de teste.

       

  • Testes de Single-Buffer simples

    • Ciclo em vários cenários de declaração:

      • Simples.

      • Deixe lacunas.

      • Registros de saída divididos em vários elementos SO.

      • Mesclar o registro de saída em um único elemento SO.

    • Ciclo em diferentes tamanhos de vértice SO.

      Verifique o limite de vértices SO de 64 componentes.

  • Testes de vários buffers simples

    • Misture tamanhos/deslocamentos de buffer para que os buffers transbordem em momentos diferentes.

    • Ciclo em vários cenários de declaração:

      • Simples.

      • Ignorar slot de saída.

      • Registros de saída divididos em vários elementos SO.

      • Transmitir componentes de registro parcial.

      • Transmitir para um único buffer no slot diferente de zero.

  • Ping ponging de buffers de saída de fluxo

    • Semelhante a testes simples de buffer único e vários buffers simples com um toque:

      • Associar inicialmente buffers A e B com um deslocamento positivo.

      • Associar buffer A usando -1 valor de deslocamento.

      • Draw()

      • Associe o buffer B usando o valor de deslocamento -1.

      • Draw()

      • Repita conforme necessário.

    • Em vários cenários de buffer, considere opcionalmente executar ping-ponging apenas alguns dos buffers SO entre chamadas Draw().

  • Alterando o tamanho do vértice SO usando o mesmo buffer de destino

    • Caso de teste personalizado que se concentra na configuração de passos de vértice "fat" para um único buffer, em seguida, Draw(), em seguida, define "skinny" SO vértice stride e, em seguida, Draw() novamente.

    • Examine STREAMOUTPUTSTATS.

    • Observe o estouro durante o streaming de vértice "gordo" e verifique se os vértices magros não podem ser acrescentados ao destino.

      Observação

         Considere executar ping-ponging durante esta etapa para garantir que o estado estourado seja "pegajoso" no buffer.

       

  • Saída de fluxo endereçável (D3D11)

    Teste RasterizedStream e vários vetores de dados:

    • Ao enviar um fluxo para o rasterizador, verifique se o resultado final usa os dados de vértice desse fluxo.

    • Verifique se mais de um vetor de dados pode ser gerado de um fluxo no nível de recurso 11, mesmo ao usar um sombreador gs_4_x.

    • Teste avanços que não estão fortemente alinhados ao tamanho de um elemento em um buffer de saída de fluxo.

    • Verifique se a saída do fluxo funciona quando o runtime determina passos com base no tamanho calculado usando a declaração de saída do fluxo. O runtime faz isso quando os parâmetros stride na chamada create são NULL.

  • Testar o nível do recurso e o comportamento da consulta:

    • Ao usar os níveis de recursos 10 e 10.1, verifique se somente o fluxo 0 pode ser usado para a saída do fluxo.

    • Ao usar os níveis de recursos 10 e 10.1, verifique se apenas gs_4_x sombreadores podem ser usados. Se vários buffers forem usados, verifique se apenas um vetor de dados pode ser gerado do fluxo 0 i.

    • D3D11_QUERY_SO_STATISTICS e D3D11_QUERY_SO_OVERFLOW_PREDICATE consultas devem retornar os dados corretos para a soma de todos os fluxos. D3D11_QUERY_SO_STATISTICS_STREAMn e D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAMn consultas retornam os dados corretos para cada fluxo. Atualmente, há casos de teste para o caso de fluxo único. O seguinte será verificado:

      • Número esperado de primitivos gravados em buffers de saída de fluxo.

      • Tamanho esperado dos primitivos (se todos eles forem gerados para buffers).

      • O predicado de estouro é disparado quando um buffer estoura ao gravar nele.

      • Se um buffer em um fluxo for preenchido, as gravações em todos os buffers nesse fluxo serão impedidas.

      • Os resultados de consultas para fluxos indefinidos não devem ser afetados.

Sintaxe de comando

Opção de comando Descrição

Wgf11streamout

Rusn o teste. Sem nenhuma opção, o teste enumera os dispositivos.

-FeatureLevel:XX.X

Define o nível de recurso testado em que XX.X é o Nível de Recurso em que o teste será executado em: 10.0, 10.1 ou 11.0.

Observação

   Para obter ajuda de linha de comando para esse binário de teste, digite /?.

 

Lista de Arquivos

Arquivo Location

Configdisplay.exe

<[testbinroot]>\nttest\windowstest\tools\

D3d11_1sdklayers.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support\

D3d11ref.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support\

D3d11sdklayers.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support\

D3dcompiler_test.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support

D3dx10_test.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support\

d3dx11_test.dll

<[testbinroot]>\nttest\windowstest\graphics\d3d\support\

TDRWatch.exe

<[testbinroot]>\nttest\windowstest\graphics\

Wgf11streamout.exe

<[testbinroot]>\nttest\windowstest\graphics\d3d\conf

 

Parâmetros

Nome do parâmetro Descrição do parâmetro
MODIFIEDCMDLINE Argumentos de linha de comando adicionais para executável de teste
LLU_NetAccessOnly Nome da LLU do usuário líquido
ConfigDisplayCommandLine Linha de comando personalizada para ConfigDisplay. Padrão: logotipo
TDRArgs /get ou /set