estrutura DXGKARG_CREATEHWQUEUE (d3dkmddi.h)
A estrutura DXGKARG_CREATEHWQUEUE é usada com DxgkDdiCreateHwQueue para criar uma fila de hardware.
Sintaxe
typedef struct _DXGKARG_CREATEHWQUEUE {
HANDLE hHwQueue;
D3DDDI_CREATEHWQUEUEFLAGS Flags;
UINT PrivateDriverDataSize;
VOID *pPrivateDriverData;
D3DKMT_HANDLE hHwQueueProgressFence;
VOID *HwQueueProgressFenceCPUVirtualAddress;
D3DGPU_VIRTUAL_ADDRESS HwQueueProgressFenceGPUVirtualAddress;
} DXGKARG_CREATEHWQUEUE;
Membros
hHwQueue
[entrada/saída] Na entrada, identificador do Dxgkrnlpara a fila de hardware. Na saída, o identificador do driver para a fila de hardware.
Flags
[in] Uma estrutura D3DDDI_CREATEHWQUEUEFLAGS que contém os sinalizadores de criação da fila.
PrivateDriverDataSize
[in] Tamanho em bytes dos dados do driver privado que pPrivateDriverData aponta para.
pPrivateDriverData
[entrada/saída] Ponteiro para os dados do driver privado que foram passados pela função de pfnCreateHwContextCb do driver no modo de usuário. Como pPrivateDriverData é um parâmetro interno, o KMD também pode retornar dados privados ao UMD.
hHwQueueProgressFence
[in] Manipule para o objeto de sincronização de GPU criado pelo sistema operacional para essa fila de hardware. A cerca de progresso é usada para sincronizar a conclusão do buffer de DMA nessa fila de hardware. Consulte Comentários.
HwQueueProgressFenceCPUVirtualAddress
[in] Endereço virtual da CPU no modo kernel que pode ser usado para ler o valor sinalizado no momento da cerca de progresso da fila de hardware.
HwQueueProgressFenceGPUVirtualAddress
[in] Endereço virtual gpu que pode ser usado para ler ou gravar o valor da cerca de progresso da fila de hardware. O valor da cerca de progresso da fila deve aumentar monotonicamente a cada novo envio para a fila de hardware. As instruções de GPU para atualizar a cerca de progresso da fila devem ser inseridas pelo driver de modo de usuário no final do buffer de DMA que está sendo rastreado.
Observações
Para hwqueues de envio de kernel, o sistema operacional alocará a cerca de progresso como um tipo de cerca nativa em GPUs que dão suporte a cercas nativas. Quando o sinalizador NativeProgressFence
Ao criar uma cerca nativa para um HWQueue, o sistema operacional também definirá D3DKMT_CREATEHWQUEUE::Flags.NativeProgressFence como TRUE, de modo que o runtime também esteja ciente de que a cerca de progresso do HWQueue foi alocada como uma cerca nativa.
Para hwqueues de envio de usuário, o SISTEMA Operacional alocará sua cerca de progresso como uma cerca nativa em DxgkDdiCreateHwQueueForUserModeSubmission() por definição.
Observação sobre a compatibilidade do driver:
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 10, versão 1703 (WDDM 2.2) |
cabeçalho | d3dkmddi.h |