Использование CPUID для определения характеристик ЦП, надежное решение?

Я пытаюсь собрать информацию о моем процессоре с помощью __ cpuid () . Хотя он работает правильно на моем компьютере, когда я запускаю свою программу на компьютере моего коллеги, он обнаруживает, что Intel Core2 Quad Q6600 является гиперпоточным, хотя, согласно спецификациям на собственном сайте Intel, это не так. т.

__ cpuid () также обнаруживает неправильное количество «логических ядер», как можно показать здесь: Программно определять количество физических процессоров / ядер, или если гиперпоточность активна в Windows, Mac и Linux . Где утверждается, что Intel Xeon E5520 имеет 16 логических ядер и 8 физических.

Я попытался запустить код, найденный в этом потоке, на моем собственном компьютере: Intel i7 2600K дал мне те же числа, что и для Xeon.

Насколько надежен __ cpuid () на самом деле? По моему собственному опыту, это не кажется таким надежным. У меня что-то фундаментальное не так?

6
задан Community 23 May 2017 в 12:00
поделиться