WGF11 Streamout
Esta prueba automatizada comprueba que los controladores gráficos o el comportamiento de salida de D3D de hardware cumplen las especificaciones de Microsoft Direct3D.
Este tema se aplica a los siguientes trabajos de prueba:
WGF11 Streamout
WGF11 Streamout (WoW64)
Detalles de las pruebas
Especificaciones |
|
Plataformas |
|
Versiones admitidas |
|
Tiempo de ejecución esperado (en minutos) | 2 |
Categoría | Compatibilidad |
Tiempo de espera (en minutos) | 120 |
Requiere reinicio | false |
Requiere una configuración especial | false |
Tipo | automatic |
Documentación adicional
Las pruebas de esta área de características pueden tener documentación adicional, incluidos los requisitos previos, la configuración y la información de solución de problemas, que se pueden encontrar en los temas siguientes:
Ejecución de la prueba
Antes de ejecutar la prueba, complete la configuración de prueba como se describe en los requisitos de prueba: Requisitos previos de adaptador gráfico o pruebas de conjuntos de chips.
Solución de problemas
Para solucionar problemas genéricos de errores de prueba de HLK, consulte Solución de problemas de errores de prueba de HLK de Windows.
Para obtener información sobre la solución de problemas, consulte Solución de problemas de Device.Graphics Testing.
Todos los casos de prueba devuelven PASS o FAIL. Revise los resultados de la prueba en el archivo de registro para obtener detalles específicos sobre los errores. La prueba puede devolver SKIP si se ejecuta con un nivel de característica que no admite la característica que se está probando. La prueba podría devolver BLOCKED si hay una excepción no detectada (el marco lo detecta al final y lo registra). Para revisar los detalles de las pruebas, revise el registro de pruebas del Administrador de HLK de Windows.
Más información
A continuación se describe el plan de pruebas de conformidad de StreamOut:
Casos de prueba generales de transmisión por secuencias
Pase los datos de entrada a la canalización mediante VB y transmita datos transformados de VS o GS.
Nota
En el caso GS, considere los problemas de amplificación mediante la emisión de más de un primitivo de salida por primitivo de entrada.
Ciclo en diferentes tipos primitivos, tamaños de búfer, emitir recuentos, desplazamientos de búfer vand.
Pruebe la anexión de datos SO mediante la realización de varias llamadas Draw().
Para GS, ciclo en sombreadores con diferentes propiedades "maxvertexcount".
En ocasiones, desborda este valor, asegurándose de que solo se conservan los primitivos completos.
Posiblemente ciclo en diferentes tipos primitivos de entrada y topologías de salida.
Comprobación de los resultados esperados de la consulta
STREAMOUTPUTSTATS
STREAMOVERFLOWPREDICATE
Pruebe escrituras primitivas incompletas.
Pruebe el orden de devanado y el control del vértice inicial.
Se permiten hasta 227 vértices SO por búfer so.
Nota
Dado que se trata de un recurso tan grande, esto funciona para probablemente uno o dos casos de prueba.
Pruebas de Single-Buffer simples
Ciclo en varios escenarios de declaración:
Simple.
Deje huecos.
Divide los registros de salida en varios elementos SO.
Combine el registro de salida en un único elemento SO.
Ciclo en diferentes tamaños de vértice SO.
Compruebe el límite de vértices so de 64 componentes.
Pruebas sencillas de búfer múltiple
Mezclar tamaños o desplazamientos del búfer para que los búferes se desborden en momentos diferentes.
Ciclo en varios escenarios de declaración:
Simple.
Omita la ranura de salida.
Divide los registros de salida en varios elementos SO.
Transmitir componentes de registro parcial.
Transmitir a un único búfer en una ranura distinta de cero.
Ping Ponging of Stream Output Buffers
De forma similar a las pruebas simples de búfer único y de varios búferes simples con un giro:
Enlaza inicialmente los búferes A y B con un desplazamiento positivo.
Enlazar el búfer A mediante el valor de desplazamiento -1.
Draw()
Enlazar el búfer B mediante el valor de desplazamiento -1.
Draw()
Repita según sea necesario.
En varios escenarios de búfer, considere la posibilidad de hacer ping-pong solo algunos de los búferes so entre llamadas Draw().
Cambio del tamaño del vértice SO con el mismo búfer de destino
Caso de prueba personalizado que se centra en establecer los pasos del vértice "fat" en un único búfer, luego Draw(), luego establece "skinny" SO paso de vértice y, a continuación, Draw() de nuevo.
Examine STREAMOUTPUTSTATS.
Observe el desbordamiento durante el streaming de vértices "fat" y asegúrese de que los vértices skinny no se pueden anexar al destino.
Nota
Considere la posibilidad de hacer ping-pong durante este paso para asegurarse de que el estado desbordado es "pegajoso" en el búfer.
Salida de flujo direccionable (D3D11)
Pruebe RasterizedStream y varios vectores de datos:
Al enviar una secuencia al rasterizador, asegúrese de que el resultado final usa los datos de vértice de esa secuencia.
Asegúrese de que se puede generar más de un vector de datos desde una secuencia en el nivel de característica 11, incluso cuando se usa un sombreador de gs_4_x.
Pruebe los pasos que no están estrechamente alineados con el tamaño de un elemento en un búfer de salida de flujo.
Compruebe que la salida del flujo funciona cuando el tiempo de ejecución determina los pasos en función del tamaño calculado mediante la declaración de salida del flujo. El tiempo de ejecución lo hace cuando los parámetros de paso en la llamada de creación son NULL.
Probar el nivel de característica y el comportamiento de las consultas:
Al usar los niveles de características 10 y 10.1, asegúrese de que solo se puede usar la secuencia 0 para la salida de la secuencia.
Al usar los niveles de características 10 y 10.1, asegúrese de que solo se pueden usar gs_4_x sombreadores. Si se usan varios búferes, asegúrese de que solo se puede generar un vector de datos de la secuencia 0 i.
D3D11_QUERY_SO_STATISTICS y D3D11_QUERY_SO_OVERFLOW_PREDICATE consultas deben devolver los datos correctos para la suma de todos los flujos. D3D11_QUERY_SO_STATISTICS_STREAMn y D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAMn consultas devuelven los datos correctos para cada secuencia. Actualmente hay casos de prueba para el único caso de secuencia. Se comprobará lo siguiente:
Número esperado de primitivos escritos para transmitir búferes de salida.
Tamaño esperado de los primitivos (si todos van a ser de salida a búferes).
El predicado de desbordamiento se desencadena cuando se desborda un búfer al escribir en él.
Si se rellena un búfer de una secuencia, se impiden las escrituras en todos los búferes de esa secuencia.
Los resultados de las consultas de flujos no definidos no deben verse afectados.
Sintaxis de comandos
Opción de comando | Descripción |
---|---|
Wgf11streamout |
Rusn la prueba. Sin ninguna opción, la prueba enumera los dispositivos. |
-FeatureLevel:XX.X |
Establece el nivel de característica probado donde XX.X es el nivel de característica que se ejecutará en: 10.0, 10.1 o 11.0. |
Nota
Para obtener ayuda de la línea de comandos para este binario de prueba, escriba /?.
Lista de archivos
Archivo | Ubicación |
---|---|
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
Nombre de parámetro | Descripción de los parámetros |
---|---|
MODIFIEDCMDLINE | Argumentos de línea de comandos adicionales para el ejecutable de prueba |
LLU_NetAccessOnly | Nombre de LLU de net user |
ConfigDisplayCommandLine | Línea de comandos personalizada para ConfigDisplay. Valor predeterminado: logotipo |
TDRArgs | /get o /set |