D3DDDI_RESERVEGPUVIRTUALADDRESS structure (d3dukmdt.h)
D3DDDI_RESERVEGPUVIRTUALADDRESS is used with pfnReserveGpuVirtualAddressCb to reserve an address range in the graphics processing unit (GPU) virtual address space of the current process.
Syntax
typedef struct D3DDDI_RESERVEGPUVIRTUALADDRESS {
union {
D3DKMT_HANDLE hPagingQueue;
D3DKMT_HANDLE hAdapter;
};
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS BaseAddress;
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MinimumAddress;
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MaximumAddress;
D3DKMT_ALIGN64 D3DGPU_SIZE_T Size;
union {
D3DDDIGPUVIRTUALADDRESS_RESERVATION_TYPE ReservationType;
UINT Reserved0;
};
union {
D3DKMT_ALIGN64 UINT64 DriverProtection;
D3DKMT_ALIGN64 UINT64 Reserved1;
};
[out] D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS VirtualAddress;
union {
D3DKMT_ALIGN64 UINT64 PagingFenceValue;
D3DKMT_ALIGN64 UINT64 Reserved2;
};
} D3DDDI_RESERVEGPUVIRTUALADDRESS;
Members
hPagingQueue
Paging queue to synchronize the operation on.
hAdapter
DirectX graphics adapter handle.
BaseAddress
(Optional) If non-NULL, the video memory manager will attempt to use this address as the base address for the reserved range. If the range from BaseAddress to BaseAddress+Size isn’t free, the call will fail. When this parameter is non-NULL, MinimumAddress and MaximumAddress are ignored.
BaseAddress is in bytes and must be aligned to 64KB boundary.
If NULL is specified the video memory manager will pick the base address for the allocation within the specified MinimumAddress and MaximumAddress.
MinimumAddress
(Optional) Specifies the minimum GPU virtual address to consider for the reserved range.
MinimumAddress is in bytes and must be aligned to 64KB boundary.
This parameter is ignored when BaseAddress != NULL.
MaximumAddress
(Optional) Specifies the maximum GPU virtual address to consider for the reserved range. the video memory manager will guarantee that BaseAddress+Size <= MaximumAddress. If this is set to NULL the video memory manager will not apply any limit.
MaximumAddress is in bytes and must be aligned to 64KB boundary.
This parameter is ignored when BaseAddress != NULL.
Size
Specify the size of the range to reserve in bytes. Must be a multiple of 64KB.
ReservationType
Specifies the virtual address reservation type.
Reserved0
This member is reserved and should be set to zero.
DriverProtection
Specifies the driver-specific protection
Reserved1
This member is reserved and should be set to zero.
[out] VirtualAddress
The reserved virtual address.
PagingFenceValue
Paging fence identifier for synchronization
Reserved2
This member is reserved and should be set to zero.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 |
Minimum supported server | Windows Server 2016 |
Header | d3dukmdt.h (include D3dumddi.h, D3dkmddi.h) |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for