Непрограммно влиять на возвращаемое значение std::thread::hardware_concurrency() ⇐ C++
-
Гость
Непрограммно влиять на возвращаемое значение std::thread::hardware_concurrency()
У меня есть параллельный алгоритм C++, реализованный с использованием алгоритмов STL и политики std::execution::parallel_policy.
Теперь я хотел бы иметь возможность оценить, насколько меняется производительность по мере увеличения количества доступных одновременных потоков.
Похоже, что C++ не предлагает никакого способа, позволяющего пользователю ограничить количество используемых одновременных потоков, по крайней мере, на данный момент.
Тем не менее, мне было интересно, можно ли каким-то образом обойти это ограничение, «позволив программе прочитать», что доступно меньшее количество потоков (например, отключив некоторые ядра ЦП или каким-то образом настроив эту информацию через ОС).
р>
Я не эксперт в этой теме и буду очень признателен за вашу помощь. Спасибо!
У меня есть параллельный алгоритм C++, реализованный с использованием алгоритмов STL и политики std::execution::parallel_policy.
Теперь я хотел бы иметь возможность оценить, насколько меняется производительность по мере увеличения количества доступных одновременных потоков.
Похоже, что C++ не предлагает никакого способа, позволяющего пользователю ограничить количество используемых одновременных потоков, по крайней мере, на данный момент.
Тем не менее, мне было интересно, можно ли каким-то образом обойти это ограничение, «позволив программе прочитать», что доступно меньшее количество потоков (например, отключив некоторые ядра ЦП или каким-то образом настроив эту информацию через ОС).
р>
Я не эксперт в этой теме и буду очень признателен за вашу помощь. Спасибо!
Мобильная версия