Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Argumentos usados para enviar un comando a la cola de hardware.
Sintaxis
typedef struct _DXGKARG_SUBMITCOMMANDTOHWQUEUE {
[in] HANDLE hHwQueue;
UINT64 HwQueueProgressFenceId;
D3DGPU_VIRTUAL_ADDRESS DmaBufferVirtualAddress;
UINT DmaBufferSize;
UINT DmaBufferPrivateDataSize;
VOID *pDmaBufferPrivateData;
DXGK_SUBMITCOMMANDFLAGS Flags;
D3DGPU_VIRTUAL_ADDRESS HwQueueProgressFenceGpuVa;
VOID *HwQueueProgressFenceCpuVa;
} DXGKARG_SUBMITCOMMANDTOHWQUEUE;
Miembros
[in] hHwQueue
Cola de hardware a la que se envía.
HwQueueProgressFenceId
Identificador de barrera de progreso de la cola de hardware que se indicará cuando el Blt presente se realice en la GPU.
DmaBufferVirtualAddress
Dirección virtual del búfer DMA que se va a ejecutar en la GPU.
DmaBufferSize
Tamaño del búfer DMA que se va a ejecutar en la GPU.
DmaBufferPrivateDataSize
Tamaño de datos privados del búfer.
pDmaBufferPrivateData
Datos binarios pasados por la devolución de llamada DDI del modo de usuario pfnSubmitToHwQueueCb, para envíos de comandos desde el modo de usuario o para envíos de modo kernel, como Present Blt, private driver data buffer rellenado por DdiPresent.
Importante
El búfer de datos del controlador privado se liberará tras la devolución de DxgkDdiSubmitCommandToHwQueue. Esto es diferente de WDDM 2.0-2.3, donde la duración de los datos del controlador privado se extiende hasta la finalización del búfer de comandos en la GPU.
Flags
Estos se establecerán en cero para los búferes de comandos generados por el controlador en modo de usuario. El controlador del modo kernel DdiPresentToHwQueue generados búferes de comandos tendrá la marca Present establecida en 1.
HwQueueProgressFenceGpuVa
VA de GPU (aceleración de vídeo) de la barrera que se indicará en esta finalización del búfer DMA.
HwQueueProgressFenceCpuVa
Va de CPU en modo kernel de la valla que se indicará en esta finalización del búfer DMA.
Si el nodo al que se envía tiene RingBufferFenceRelease límite establecido en 0, el controlador del modo de usuario inserta la actualización de barrera como última instrucción al final del búfer DMA o para envíos de kernel, mediante el controlador de modo kernel en respuesta a la llamada DdiSignalMonitoredFence.
Si el nodo al que se envía tiene RingBufferFenceRelease límite establecido en 1, la actualización de barrera se realiza después de que el búfer DMA ya no esté en uso por GPU o CPU. La mecánica exacta de la actualización de barreras es hasta el KMD/GPU. Por ejemplo, el hardware del procesador de administración de contextos puede hacerlo al retirar el búfer DMA o por el KMD.
Requisitos
| Requisito | Valor |
|---|---|
| encabezado de | d3dkmddi.h |