Compartilhar via


D3D12DDI_MEASUREMENTS_ACTION_0062 enumeração (d3d12umddi.h)

Indica o que fazer com o resultado de medidas anteriores de PGO (otimização guiada por perfil).

Syntax

typedef enum D3D12DDI_MEASUREMENTS_ACTION_0062 {
  D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL,
  D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS,
  D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY,
  D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS
} ;

Constantes

 
D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL
D3D12DDI_MEASUREMENTS_ACTION_0062_KEEP_ALL não solicita nenhuma alteração específica do comportamento. Os resultados anteriores ainda são válidos e o driver pode continuar acompanhando quaisquer estatísticas que estejam no meio da medição.
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS dicas de que a carga de trabalho vista até agora representa o conjunto completo do que vale a pena otimizar com base, por exemplo, que um submenu de cena terminou em uma ferramenta de benchmarking ou a reprodução do único quadro que está sendo analisado foi concluída no PIX. A UMD deve iniciar qualquer processamento em segundo plano desejado com base no que viu até agora, pois nenhum trabalho diferente será recebido em um futuro próximo. Depois que o UMD retornar de uma chamada SetBackgroundProcessingMode que especifica D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS, todas as tarefas em segundo plano atualmente enfileiradas serão consideradas parte do commit. Depois que esse conjunto de tarefas terminar de ser executado, o hEventToSignalOnCompletion fornecido será sinalizado.

Se a UMD estiver coletando estatísticas sobre, por exemplo, valores constantes comumente usados e está aguardando que alguma quantidade limite de dados seja registrada antes de agir sobre essas informações, o sinalizador de confirmação deve escalar verticalmente qualquer frequência que os histogramas tenham sido registrados até agora para dar o mesmo resultado que se o limite de act-now normal tivesse sido atingido após um período mais longo de coleta de dados. Isso é importante para permitir que o PIX reproduza apenas uma captura de quadro único, mas solicite um conjunto final de sombreadores otimizados correspondentes a esse trabalho, sem ter que perder tempo repetindo um único quadro muitas centenas de vezes.

Se os modos D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS ou D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY não forem usados, hEventToSignalOnCompletion deverá ser nulo.
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY
D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS_HIGH_PRIORITY é um superconjunto do modo D3D12DDI_MEASUREMENTS_ACTION_0062_COMMIT_RESULTS que modifica o comportamento de agendamento de thread. Esse modo indica que fazer compilações em segundo plano rapidamente é mais importante do que evitar falhas, portanto, o runtime D3D agendará mais de uma tarefa simultaneamente usando vários threads e os executará com prioridade maior que a ociosa. Esse aumento dura até que todas as tarefas geradas pelo commit tenham terminado de ser executadas.

O modo de alta prioridade só é válido quando o modo de desenvolvedor está habilitado
D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS
D3D12DDI_MEASUREMENTS_ACTION_0062_DISCARD_PREVIOUS dicas para a UMD de que a carga de trabalho foi alterada de forma significativa, portanto, quaisquer resultados de medidas anteriores não são mais significativos.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1903
Cabeçalho d3d12umddi.h