Функция D3DKMTMapGpuVirtualAddress (d3dkmthk.h)
D3DKMTMapGpuVirtualAddress сопоставляет диапазон виртуальных адресов GPU с определенным диапазоном выделения или помещает его в состояние Invalid или Zero.
Синтаксис
NTSTATUS D3DKMTMapGpuVirtualAddress(
D3DDDI_MAPGPUVIRTUALADDRESS *unnamedParam1
);
Параметры
unnamedParam1
[in/out] pData — это указатель на структуру D3DDDI_MAPGPUVIRTUALADDRESS, описывающую операцию.
Возвращаемое значение
Возвращаемый код | Описание |
---|---|
STATUS_SUCCESS | Контекст устройства успешно создан. |
STATUS_INVALID_PARAMETER | Параметры были проверены и определены как неверные. |
Эта функция также может возвращать другие значения NTSTATUS.
Замечания
Драйвер может указать базовый виртуальный адрес GPU (VA) для сопоставления или автоматического выбора диспетчера памяти видео. При указании значения, отличного от NULL BaseAddress, весь диапазон от BaseAddress до BaseAddress+Size должен находиться в свободном состоянии или принадлежать диапазону va, полученному путем вызова D3DKMTMapGpuVirtualAddress или DxgkCbReserveGpuVirtualAddressRange. Если указан Protection.Zero или Protection.NoAccess, диапазон va не может принадлежать диапазону, полученному путем вызова MapGpuVirtualAddressCb.
Драйвер может указать, должно ли сопоставление разрешать запись и выполнение привилегий в дополнение к привилегиям чтения, которые всегда существуют по умолчанию.
В конфигурации связанного адаптера отображения (LDA) очередь разбиения по страницам определяет физический GPU, таблицы страниц которого изменяются, а дескриптор выделения (если не NULL) определяет, где указываются записи таблицы страниц. Выделение может находиться в любом физическом сегменте памяти GPU.
Диапазон VA GPU, выделенный API, освобождается при уничтожении выделения (с gpu VA). Диапазон va также можно освободить, вызвав D3DKMTFreeGpuVirtualAddress, но при необходимости его необходимо синхронизировать с уничтожением выделения.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 |
минимальный поддерживаемый сервер | Windows Server 2016 |
целевая платформа | Всеобщий |
заголовка | d3dkmthk.h (include D3dkmthk.h) |
библиотеки | Gdi32.lib |
DLL | Gdi32.dll |