У меня есть пара HP BL460C, которые тестируются, чтобы определить, какой процессор мы хотим использовать, когда мы начнем обновлять наше оборудование, и на одном из них есть проблема с этой переменной среды.
Блейд работает под управлением Windows 7 Enterprise, а переменная NUMBER_OF_PROCESSORS сообщает о 14 процессорах, но на машине установлено два 14-ядерных процессора, поэтому мы должны видеть вдвое больше. Я смог убедиться, что оба процессора установлены и обнаружены машиной через msinfo32 и диспетчер устройств.
Есть ли что-то, что может повлиять на то, как создается переменная? Какой процесс Windows вообще использует для установки этого числа? Я знаю, что его можно отредактировать, но он просто сбрасывается после перезагрузки, так что это не особо помогает. Любое понимание, которое у вас есть, было бы безмерно оценено.
Обновление: решил перестроить компьютер под Windows 2008R2, чтобы посмотреть, изменит ли он или устранит проблему, но проблема не исчезла. Значит, причина не в технически несовместимой конфигурации.
Насколько я знаю, $ENV:NUMBER_OF_PROCESSORS
получен из WMI, используя: Win32_ComputerSystem.NumberOfLogicalProcessors
Чтобы добавить путаницы, Win32_ComputerSystem
также сообщает количество физических процессоров как NumberOfProcessors
.
Ты можешь использовать WMIC
или PowerShell для оценки этих значений:
Get-WmiObject -Class Win32_ComputerSystem|Select NumberOf*
Если ваша машина показывает NumberOfProcessors
как только 1, у вас может быть проблема с оборудованием или проблема с активацией лицензии, поскольку только выпуски Enterprise, Professional и Ultimate Windows 7 распознают более одного физического процессора
Хорошо ... я действительно Любопытно, почему вы хотите запускать Windows 7 на этих серверах вместо серверных выпусков Windows. Вы можете подробнее рассказать о своей среде?
Вы используете HP ProLiant BL460c Gen9 сервер с двумя очень элитный 14-ядерные процессоры Intel E5-2697v3.
Пока HP производила блейд-серверы для конкретных рабочих станций до линейки Gen8 ProLiant еще не существовало эквивалента Gen9.
На данный момент я подозреваю несколько вещей:
Windows 7 Enterprise может поддерживать два сокета ЦП и 64 логических ядра, но вы видите только один сокет ЦП. Я полагаю, вы ожидаете увидеть 28 ядер?
Ваша система полностью обновлена с точки зрения ОС? Если нет, запустите все обновления ОС. Это новый процессор, выпущенный несколько недель назад на ОЧЕНЬ новой серверной платформе. Сомневаюсь, что прямо сейчас вы найдете других людей с такой комбинацией ОС и оборудования.
Вы в курсе прошивки системы? Если нет, обновите его.
HP не намеревался чтобы эта модель сервера использовалась с Windows 7, поэтому это лишит вас возможности запускать агенты управления работоспособностью и дополнительные драйверы на оборудовании.
Вы можете потенциально использовать Драйверы / прошивка Windows 2008 R2 для системы, но все это не поддерживается.
Windows 7 не является поддерживаемой операционной системой для работы на этом оборудовании., что является для меня достаточно хорошим объяснением того, почему он неправильно сообщает об установленном оборудовании. Другие причины в ответе Матиаса в конечном итоге тоже может быть причиной, но, вообще говоря, «неподдерживаемая конфигурация» является достаточно хорошим объяснением для целей профессионального системного администрирования.
Что касается систем Windows, только операционные системы Windows Server 2003 и выше поддерживаются на BL460C и, в этом отношении, на большинстве серверного оборудования HP.
Джастин, я опубликовал комментарий ранее, но он не был воспринят как ответ - однако он привел к решению для меня, поэтому я опубликовал ниже работу и решение, которые помогут вам понять логику моего сценария, и тогда вы сможете судите, есть ли у вас такой же.
Вечер, Джастин, я вижу ту же проблему с HP proliant blade bl460c поколения 9 windows windows 2012 r2. поколение 8 сообщило все правильно. Вы нашли решение. Мои выводы: «echo% NUMBER_OF_PROCESSORS%» возвращает неверный \ несогласованный ответ по сравнению с msinfo32, диспетчером задач и даже Get-WmiObject -Class Win32_ComputerSystem | fl Номер *
Сообщенное число - 8, правильное число - 16.
Хэвингс обсуждал с HP и Microsoft, что это, по-видимому, связано с узлами NUMA и чередованием.
это было решено путем ввода bies и отключения чередования узлов. после этого переменная "% number_of_processors%" вернула то же количество процессоров, что и настройки логического мастера. Итак, это решило проблему для меня.
для получения дополнительной информации о настройках NUMA см .: http://msdn.microsoft.com/en-us/library/windows/desktop/aa363804(v=vs.85).aspx