Вы можете сделать следующее:
$CPUData = @(Get-CIMInstance -Class Win32_Processor | Select NumberOfCores,NumberOfLogicalProcessors)
$CPU_Count = ($CPUData.NumberOfLogicalProcessors | Measure -Sum).Sum
[pscustomobject]@{'CPU_Count' = $CPU_Count
'Hyperthread_Ratio' = $CPU_Count/$CPUData.Count
}
Объяснение:
Get-CIMInstance -Class Win32_Processor
возвращает свойства NumberOfLogicalProcessors
и NumberOfCores
. Когда эти два значения свойств различаются, включается гиперпоточность.
cpu_count
и hyperthread_ratio
возвращают только данные о логических процессорах, поэтому это все, что нам нужно для расчета.
Данные, которые вы хотите, не существуют без расчета (что я мог бы найти). cpu_count
- это общее количество логических процессоров (сумма значений NumberOfLogicalProcessors
). hyperthread_ratio
- это общее количество логических процессоров, деленное на общее число сокетов ЦП.
Кроме того, мое тестирование показывает, что сходство процессоров в экземпляре SQL не влияет на вычисления или данные в SQL query.