DXGK_BUILDPAGINGBUFFER_NOTIFYRESIDENCY structure (d3dkmddi.h)

DXGK_BUILDPAGINGBUFFER_NOTIFYRESIDENCY describes a residency allocation change operation.

Syntax

typedef struct _DXGK_BUILDPAGINGBUFFER_NOTIFYRESIDENCY {
  HANDLE                  hAllocation;
  D3DGPU_PHYSICAL_ADDRESS PhysicalAddress;
  union {
    UINT Resident : 1;
    UINT Reserved : 31;
  };
} DXGK_BUILDPAGINGBUFFER_NOTIFYRESIDENCY;

Members

hAllocation

The kernel mode driver handle returned from DxgkDdiCreateAllocation.

PhysicalAddress

The physical address of the allocation. The physical address (0, 0) is invalid and is used when the allocation is being evicted.

Resident

Set to 0 when the allocation is evicted and set to 1 when the allocation is committed.

Reserved

This member is not used and should be set to zero.

Remarks

The paging operations is issued only for allocations, for which the kernel mode driver sets the DXGK_ALLOCATIONINFOFLAGS::ExplicitResidencyNotification and AccessedPhysically flags.

The operation is issued after FillVirtual or TransferVirtual operations when the allocation is committed to a memory segment (Resident == 1). Note that the previous paging operations might not yet be finished by graphics processing unit (GPU).

The operation is issued before TransferVirtual operation when the allocation is evicted (Resident == 0) from a memory segment.

Note that the NotifyResidency operation will be issued only once during allocation eviction/commitment, while there might be several TransferVirtual/FillVirtual operations for a single allocation.

Requirements

Requirement Value
Minimum supported client Windows 10
Minimum supported server Windows Server 2016
Header d3dkmddi.h (include D3dkmddi.h)

See also

DXGKARG_BUILDPAGINGBUFFER

DxgkDdiCreateAllocation