Как определить количество физических процессоров/ядер в Windows, Mac и LinuxC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как определить количество физических процессоров/ядер в Windows, Mac и Linux

Сообщение Anonymous »

У меня есть многопоточное приложение на C++, которое работает на Windows, Mac и некоторых версиях Linux.
Коротко говоря: чтобы оно работало с максимальной эффективностью, я должны иметь возможность создавать один поток для каждого физического процессора/ядра. Создание большего количества потоков, чем имеется физических процессоров/ядер, значительно снижает производительность моей программы. Я уже могу правильно определить количество логических процессоров/ядер на всех трех этих платформах. Чтобы иметь возможность правильно определить количество физических процессоров/ядер, мне нужно определить, поддерживается ли гипертрединг и активно.
Есть ли способ чтобы определить, поддерживается ли гиперпоточность и включена? Если да, то как именно?

Подробнее здесь: https://stackoverflow.com/questions/290 ... c-and-linu
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»