GDI Hardware Acceleration

The GDI Hardware Acceleration feature introduced with Windows 7 provides accelerated core graphics device interface (GDI) operations on a graphics processing unit (GPU).

To indicate that the GPU and the driver support this feature, the display miniport driver must set DXGKDDI_INTERFACE_VERSION to >= DXGKDDI_INTERFACE_VERSION_WIN7.

The display miniport driver also should set DXGK_PRESENTATIONCAPS->SupportKernelModeCommandBuffer to TRUE to indicate that it supports GDI Hardware Acceleration command buffer processing. The driver should report this type of support only if the cache-coherent GPU aperture segment exists and there is no significant performance penalty when the CPU accesses GPU memory.

The following reference topics describe how to use this feature:

Driver-Implemented Functions
The following functions must be implemented by display miniport drivers that support GDI Hardware Acceleration:

DxgkDdiCreateAllocation

DxgkDdiGetStandardAllocationDriverData

DxgkDdiRenderKm

Structures D3DKM_TRANSPARENTBLTFLAGS

D3DKMDT_GDISURFACEDATA

D3DKMDT_GDISURFACEFLAGS

DRIVER_INITIALIZATION_DATA

DXGK_CREATECONTEXTFLAGS

DXGK_CREATEDEVICEFLAGS

DXGK_GDIARG_ALPHABLEND

DXGK_GDIARG_BITBLT

DXGK_GDIARG_CLEARTYPEBLEND

DXGK_GDIARG_COLORFILL

DXGK_GDIARG_STRETCHBLT

DXGK_GDIARG_TRANSPARENTBLT

DXGK_RENDERKM_COMMAND

DXGK_PRESENTATIONCAPS

DXGKARG_GETSTANDARDALLOCATIONDRIVERDATA

DXGKARG_RENDER

Enumerations D3DKMDT_STANDARDALLOCATION_TYPE

D3DKMDT_GDISURFACETYPE

DXGK_GDIROP_BITBLT

DXGK_GDIROP_COLORFILL

DXGK_RENDERKM_OPERATION

For more details on how to implement GDI Hardware Acceleration in your display miniport driver, see the following topics:

Setting the Size and Pitch of the Memory Allocation

Initialization and DMA Buffer Creation

Reporting Optional Support for Rendering Operations

Supporting Kernel-Mode Command Buffers

Specifying GDI Hardware-Accelerated Rendering Operations