Поделиться через


Функция KeQueryHighestNodeNumber (ntddk.h)

Подпрограмма KeQueryHighestNodeNumber возвращает наибольшее число узлов в многопроцессорной системе с неоднородной архитектурой доступа к памяти (NUMA).

Синтаксис

USHORT KeQueryHighestNodeNumber();

Возвращаемое значение

KeQueryHighestNodeNumber возвращает наибольшее число узлов.

Комментарии

В многопроцессорной архитектуре с неоднородным доступом к памяти (NUMA) узел представляет собой коллекцию процессоров, которые совместно используют быстрый доступ к области памяти. Доступ к памяти является неоднородным, так как процессор может получить доступ к памяти на своем узле быстрее, чем к памяти на других узлах.

Если многопроцессорная система NUMA содержит n узлов, узлы нумеруются от 0 до n-1, а KeQueryHighestNodeNumber возвращает n-1. Если система содержит один узел, KeQueryHighestNodeNumber возвращает ноль.

Если в системе нет архитектуры NUMA, keQueryHighestNodeNumber возвращает ноль. Пример архитектуры, отличной от NUMA, — симметричная многопроцессорная система (SMP).

Когда Windows инициализирует многопроцессорную систему NUMA, она назначает логические процессоры узлам и подсчитывает количество результирующие узлы. Windows определяет емкость узла как количество процессоров, которые присутствуют при запуске системы в дополнение к любым другим логическим процессорам, которые можно добавить на узел во время работы системы. Если во время инициализации Windows сталкивается с аппаратным узлом NUMA, который содержит больше логических процессоров, чем помещается в группу, Windows разделяет узел на более мелкие логические узлы. Каждый из этих узлов не превышает максимальный размер группы. Значение, возвращаемое KeQueryHighestNodeNumber , указывает количество логических узлов в системе.

После инициализации системы количество узлов остается фиксированным, пока система продолжает работать. Это число может включать узлы только для памяти, которые являются узлами, содержащими память, но не активными логическими процессорами.

Требования

Требование Значение
Минимальная версия клиента Доступно в Windows 7 и более поздних версиях Windows.
Целевая платформа Универсальное
Верхняя часть ntddk.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень