WGF11 Streamout (WoW64)
Esta prueba automatizada comprueba que los controladores de gráficos o el comportamiento de streaming 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 este á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 de 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 puede devolver BLOCKED si hay una excepción no detectada (el marco lo detecta al final y lo registra). Para revisar los detalles de la prueba, revise el registro de pruebas desde el 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 de transmisión por secuencias generales
Pase los datos de entrada a la canalización mediante VB y transmita datos transformados de VS o GS.
Nota
En el caso de 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 de vand.
Pruebe la anexión de datos SO mediante la realización de varias llamadas a Draw().
Para GS, ciclo en sombreadores con diferentes propiedades "maxvertexcount".
Ocasionalmente desborda este valor, asegurándose de que solo se mantienen 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 corte y el control de vértices iniciales.
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 varios búferes
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 solo 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 con el valor de desplazamiento -1.
Draw()
Enlace del búfer B con el valor de desplazamiento -1.
Draw()
Repita según sea necesario.
En varios escenarios de búfer, considere opcionalmente ping-ponging solo algunos de los búferes so entre llamadas Draw().
Cambio del tamaño del vértice SO mediante el mismo búfer de destino
Caso de prueba personalizado que se centra en establecer los pasos del vértice "fat" en un solo búfer, a continuación, Draw() y, a continuación, establece "skinny" SO con el paso del vértice y, a continuación, de nuevo Draw().
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.
Intervalos de prueba 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 de flujo. El tiempo de ejecución lo hace cuando los parámetros stride de 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ística 10 y 10.1, asegúrese de que solo se puede usar la secuencia 0 para la salida del flujo.
Al usar los niveles de características 10 y 10.1, asegúrese de que solo se pueden usar sombreadores gs_4_x. 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 todas las secuencias. 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 caso de flujo único. Se comprobará lo siguiente:
Número esperado de primitivos escritos para transmitir búferes de salida.
Tamaño esperado de los primitivos (si todos se van a generar en búferes).
El predicado de desbordamiento se desencadena cuando un búfer se desborda 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 para 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 en el que se ejecutará la prueba en: 10.0, 10.1 o 11.0. |
Nota
Para obtener ayuda de línea de comandos para este archivo 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 del usuario neto |
ConfigDisplayCommandLine | Línea de comandos personalizada para ConfigDisplay. Valor predeterminado: logotipo |
TDRArgs | /get o /set |