D3DDDICB_UPDATEGPUVIRTUALADDRESS 结构 (d3dumddi.h)
D3DDDICB_UPDATEGPUVIRTUALADDRESS 与 pfnUpdateGpuVirtualAddressCb 一起使用,以允许用户模式驱动程序指定要应用于单批页表更新中的进程虚拟地址空间的多个映射操作。
语法
typedef struct _D3DDDICB_UPDATEGPUVIRTUALADDRESS {
HANDLE hContext;
D3DKMT_HANDLE hFenceObject;
UINT NumOperations;
D3DDDI_UPDATEGPUVIRTUALADDRESS_OPERATION *Operations;
UINT Reserved0;
UINT64 Reserved1;
UINT64 FenceValue;
union {
struct {
UINT DoNotWait : 1;
UINT Reserved : 31;
};
UINT Value;
} Flags;
} D3DDDICB_UPDATEGPUVIRTUALADDRESS;
成员
hContext
指定将对其同步映射操作的上下文。 这还确定将针对哪个内核上下文执行映射操作。 在链接的显示适配器配置 中,hContext 定义一个物理 GPU,其页表已修改。
hFenceObject
指定要用于同步的受监视围栏对象。 这通常应设置为用户模式驱动程序用于跟踪 hContext 进度的受监视围栏。
NumOperations
指定 Operations 数组中的操作数。
Operations
D3DDDI_UPDATEGPUVIRTUALADDRESS_OPERATION 要对 GPU 虚拟地址空间执行的操作数组。
Reserved0
此成员为保留成员,应设置为零。
Reserved1
此成员为保留成员,应设置为零。
FenceValue
为 hFenceObject 指定 Map 操作应在 (等待的 FenceValue,除非 DoNotWait 为 1) 。 映射操作完成后,fence 对象将使用 FenceValue+1 向 hFenceObject 发出信号。
Flags
Flags.DoNotWait
设置为 1 时,在执行操作之前不会等待同步对象。
Flags.Reserved
此成员为保留成员,应设置为零。
Flags.Value
Flags 联合的合并值。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 |
最低受支持的服务器 | Windows Server 2016 |
标头 | d3dumddi.h (包括 D3dumddi.h) |