Compartir a través de


PFND3DDDI_MAPGPUVIRTUALADDRESSCB función de devolución de llamada (d3dumddi.h)

intervalos pfnMapGpuVirtualAddressCb asigna intervalos de direcciones virtuales de GPU (VA) a un intervalo de asignación específico o lo coloca en el estado no válido o cero.

Sintaxis

PFND3DDDI_MAPGPUVIRTUALADDRESSCB Pfnd3dddiMapgpuvirtualaddresscb;

HRESULT Pfnd3dddiMapgpuvirtualaddresscb(
  HANDLE hDevice,
  D3DDDI_MAPGPUVIRTUALADDRESS *unnamedParam2
)
{...}

Parámetros

hDevice

Identificador del dispositivo de visualización.

unnamedParam2

[in/out] pDate es un puntero a una estructura D3DDDI_MAPGPUVIRTUALADDRESS que describe la operación que se va a realizar.

Valor devuelto

pfnMapGpuVirtualAddressCb devuelve uno de los siguientes valores:

Código devuelto Descripción
S_OK La operación se completó correctamente.
E_PENDING La llamada se realizó correctamente, pero la operación no ha finalizado. El autor de la llamada debe esperar al valor de barrera devuelto antes de acceder a la asignación.

Esta función también puede devolver otros valores.

Observaciones

El controlador en modo de usuario puede especificar una dirección virtual de GPU base (VA) para asignar o permitir que el administrador de memoria de vídeo elija automáticamente uno. Al especificar un valor de BaseAddress no NULL, el intervalo completo de BaseAddress a BaseAddress+Size debe estar en un estado libre o pertenecer a un intervalo de VA que se obtuvo llamando a pfnMapGpuVirtualAddressCb o pfnReserveGpuVirtualAddressCb. Cuando se especifica Protection.Zero o Protection.NoAccess, el intervalo de VA no puede pertenecer a un intervalo que se obtuvo llamando a pfnMapGpuVirtualAddressCb.

El controlador en modo de usuario puede especificar si la asignación debe permitir privilegios de escritura y ejecución, además de privilegios de lectura, que siempre existen de forma predeterminada.

En la configuración del adaptador de pantalla vinculado (LDA), la cola de paginación define una GPU física cuyas tablas de páginas se modifican y el identificador de asignación (si no ES NULL) define a dónde apuntan las entradas de la tabla de páginas. La asignación puede residir en cualquier segmento de memoria de GPU física.

El intervalo de VA de GPU, asignado por la API, se libera cuando se destruye la asignación (el VA de GPU se asigna a). El intervalo de VA también se puede liberar llamando a PFND3DDDI_FREEGPUVIRTUALADDRESSCB, pero esto debe sincronizarse con la destrucción de asignación si es necesario.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 10
servidor mínimo admitido Windows Server 2016
de la plataforma de destino de Escritorio
encabezado de d3dumddi.h (incluya D3dumddi.h)

Consulte también

D3DDDI_MAPGPUVIRTUALADDRESS

pfnReserveGpuVirtualAddressCb