D3DKMT_UPDATEGPUVIRTUALADDRESS结构(d3dkmthk.h)

D3DKMT_UPDATEGPUVIRTUALADDRESSUpdateGpuVirtualAddress 一起使用,以允许驱动程序指定要在一批页表更新中应用于进程虚拟地址空间的映射操作。

语法

typedef struct _D3DKMT_UPDATEGPUVIRTUALADDRESS {
  D3DKMT_HANDLE                            hDevice;
  D3DKMT_HANDLE                            hContext;
  D3DKMT_HANDLE                            hFenceObject;
  UINT                                     NumOperations;
  D3DDDI_UPDATEGPUVIRTUALADDRESS_OPERATION *Operations;
  D3DKMT_ALIGN64 D3DKMT_SIZE_T             Reserved0;
  D3DKMT_ALIGN64 UINT64                    Reserved1;
  D3DKMT_ALIGN64 UINT64                    FenceValue;
  union {
    struct {
      UINT DoNotWait : 1;
      UINT Reserved : 31;
    };
    UINT Value;
  } Flags;
} D3DKMT_UPDATEGPUVIRTUALADDRESS;

成员

hDevice

设备的句柄。

hContext

映射操作将对其同步的上下文的句柄。 这还确定将对其执行映射操作的内核上下文。 在链接的显示适配器(LDA)配置中,hContext 定义其页面表被修改的物理 GPU。

hFenceObject

指定要用于同步的受监视围栏对象。 这通常应设置为用户模式驱动程序用来跟踪 hContext进度的受监视围栏。

NumOperations

指定 操作 数组中的操作数。

Operations

D3DDDI_UPDATEGPUVIRTUALADDRESS_OPERATION 要对 GPU 虚拟地址空间执行的操作数组。

Reserved0

此成员是保留的,应设置为零。

Reserved1

此成员是保留的,应设置为零。

FenceValue

指定映射操作应等待的 hFenceObject FenceValue(除非 DoNotWait 为 1)。 地图操作完成后,围栏对象将使用 FenceValue+1 发出 hFenceObject 信号。

Flags

标记选项。

Flags.DoNotWait

设置为 1 时,在执行操作之前不会等待同步对象。

Flags.Reserved

此成员是保留的,应设置为零。

Flags.Value

标志 联合的合并值。

要求

要求 价值
最低支持的客户端 Windows 10
支持的最低服务器 Windows Server 2016
标头 d3dkmthk.h (包括 D3dkmthk.h)