Compartilhar via


Enumeração DXCoreAdapterState (dxcore_interface.h)

Importante

Algumas informações referem-se a um produto de pré-lançamento que pode ser substancialmente modificado antes de ser lançado comercialmente. A Microsoft não oferece garantias, expressas ou implícitas, em relação às informações fornecidas aqui.

Define constantes que especificam tipos de estados do adaptador DXCore. Passe uma dessas constantes para o método IDXCoreAdapter::QueryState para recuperar o item de estado do adaptador para um tipo de estado; passe uma constante para o método IDXCoreAdapter::SetState para definir as informações de um adaptador para um item de estado.

Sintaxe

typedef enum DXCoreAdapterState {
  IsDriverUpdateInProgress = 0,
  AdapterMemoryBudget = 1,
  AdapterMemoryUsageBytes = 2,
  AdapterMemoryUsageByProcessBytes = 3,
  AdapterEngineRunningTimeMicroseconds = 4,
  AdapterEngineRunningTimeByProcessMicroseconds = 5,
  AdapterTemperatureCelsius = 6,
  AdapterInUseProcessCount = 7,
  AdapterInUseProcessSet = 8,
  AdapterEngineFrequencyHertz = 9,
  AdapterMemoryFrequencyHertz = 10
} ;

Constantes

 
IsDriverUpdateInProgress
Valor: 0
Especifica o estado do adaptador IsDriverUpdateInProgress, que quando indica que uma atualização do driver foi iniciada no adaptador, mas ainda não foi concluída. Se a atualização do driver já tiver sido concluída, o adaptador será invalidado e sua chamada QueryState retornará um HRESULT de DXGI_ERROR_DEVICE_REMOVED.

Ao chamar queryState, o IsDriverUpdateInProgress item de estado tem o tipo uint8_t, representando um valor booliano.

importante. Este item de estado não tem suporte para SetState.
AdapterMemoryBudget
Valor: 1
Especifica o adapterMemoryBudget estado do adaptador, que recupera ou solicita o orçamento de memória do adaptador no adaptador.

Ao chamar QueryState, o estado do adaptador AdapterMemoryBudget tem o tipo DXCoreAdapterMemoryBudgetNodeSegment de grupo para inputStateDetails e digite DXCoreAdapterMemoryBudget para outputBuffer.

importante. Este item de estado não tem suporte para SetState.
AdapterMemoryUsageBytes
Valor: 2
Essa consulta usa o Índice do Adaptador Físico e Dedicado vs. Compartilhado como entrada; e gera as partes confirmadas e de memória residente dedicadas ou compartilhadas da memória gpu, respectivamente.
AdapterMemoryUsageByProcessBytes
Valor: 3
Essa consulta usa a ID do Mecanismo, o Índice do Adaptador Físico e o Identificador de Processo como entrada; e gera memória confirmada e memória residente em partes dedicadas ou compartilhadas de memória gpu, respectivamente.
AdapterEngineRunningTimeMicroseconds
Valor: 4
Essa consulta usa a ID do Mecanismo e o Índice do Adaptador Físico como entrada; e gera o tempo de execução do mecanismo como saída.
AdapterEngineRunningTimeByProcessMicroseconds
Valor: 5
Essa consulta usa a ID do Mecanismo, o Índice do Adaptador Físico e o Identificador de Processo como entrada; e gera o tempo de execução do mecanismo como saída.
AdapterTemperatureCelsius
Valor: 6
Essa consulta usa o Índice do Adaptador Físico como entrada e gera a temperatura atual da GPU em graus Celsius.
AdapterInUseProcessCount
Valor: 7
Isso retorna o número de processos usando esse adaptador e os PIDs nele, respectivamente.
AdapterInUseProcessSet
Valor: 8
Isso retorna o número de processos usando esse adaptador e os PIDs nele, respectivamente.
AdapterEngineFrequencyHertz
Valor: 9
Essa consulta usa os índices do adaptador físico e do mecanismo e gera a frequência do relógio do respectivo mecanismo em hertz. A estrutura de saída também inclui a frequência máxima para o mecanismo, com e sem overclocking.


uint64_t GetEngineFrequency(com_ptr adaptador, uint32_t physicalIndex, uint32_t engineIndex)
{
Índice DXCoreAdapterEngineIndex;
índice. PhysicalAdapterIndex = physicalIndex;
índice. EngineIndex = engineIndex;

DXCoreFrequencyQueryOutput frequencyData = {};

winrt::check_hresult(adapter->QueryState(DXCoreAdapterState::AdapterEngineFrequencyHertz, &index, &frequencyData));

return frequencyData.Frequency;
}
AdapterMemoryFrequencyHertz
Valor: 10
Essa consulta usa o índice do adaptador físico e gera a frequência do relógio de sua memória em hertz. A estrutura de saída também inclui a frequência máxima para a memória, com e sem overclocking.


uint64_t GetEngineFrequency(com_ptr adaptador, uint32_t physicalIndex, uint32_t engineIndex)
{
uint64_t GetMemoryFrequency(adaptador com_ptr, uint32_t physicalIndex)
{
DXCoreFrequencyQueryOutput frequencyData = {};

winrt::check_hresult(adapter->QueryState(DXCoreAdapterState::AdapterMemoryFrequencyHertz, &physicalIndex, &frequencyData));

return frequencyData.frequency;
}

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10 (Build 18936)
cabeçalho dxcore_interface.h (inclua dxcore.h)

Consulte também

IDXCoreAdapter::QueryState, IDXCoreAdapter::SetState, de referência DXCore, Usando DXCore para enumerar adaptadores