функция обратного вызова DXGKDDI_CALIBRATEGPUCLOCK (d3dkmddi.h)
Вызывается подсистемой ядра графики Microsoft DirectX для калибровки меток времени GPU в буфере журнала DXGK_HISTORY_BUFFER с использованием времени ЦП.
Синтаксис
DXGKDDI_CALIBRATEGPUCLOCK DxgkddiCalibrategpuclock;
NTSTATUS DxgkddiCalibrategpuclock(
IN_CONST_HANDLE hAdapter,
IN UINT32 NodeOrdinal,
IN UINT32 EngineOrdinal,
OUT_PDXGKARG_CALIBRATEGPUCLOCK pClockCalibration
)
{...}
Параметры
hAdapter
Дескриптор объекта адаптера для GPU, для которого требуется получить сведения о калибровке времени.
Драйвер минипорта отображения ранее предоставил этот дескриптор подсистеме ядра графики DirectX в MiniportDeviceContext выходной параметр функции DxgkDdiAddDevice.
NodeOrdinal
Индекс узла, для которого будут получены сведения о калибровке времени. Этот узел находится в физическом адаптере, определенном параметром hAdapter.
EngineOrdinal
Отсчитываемый от нуля индекс подсистемы в узле, NodeOrdinal, для которого будут получены сведения о калибровке времени. Для графических адаптеров, которые не являются частью ссылки в конфигурации связанного адаптера отображения (LDA), всегда следует задать EngineOrdinal значение 0.
pClockCalibration
Указатель на структуру DXGKARG_CALIBRATEGPUCLOCK, которая предоставляет сведения о счетчике часов из GPU и ЦП.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если он успешно выполнен; в противном случае возвращается один из кодов ошибок, определенных в Ntstatus.h.
Замечания
Подсистема графического ядра DirectX использует возвращаемые сведения в параметре pClockCalibration для оценки смещения между часами GPU и ЦП.
Чтобы свести к минимуму неточности калибровки, драйвер должен вычислить значения для GpuClockCounter и CpuClockCounter члены структуры DXGKARG_CALIBRATEGPUCLOCK практически одновременно.
Подсистема ядра графики DirectX вызывает эту функцию достаточно часто, как правило, один раз каждые 30 мс, чтобы свести к минимуму накопленный дрейф между gpu и ЦП часов.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 8.1,WDDM 1.3 |
минимальный поддерживаемый сервер | Windows Server 2012 R2 |
целевая платформа | Настольный |
заголовка | d3dkmddi.h |
IRQL | DISPATCH_LEVEL |