Первый запуск параллельного for_each в 10 раз медленнееLinux

Ответить
Anonymous
 Первый запуск параллельного for_each в 10 раз медленнее

Сообщение Anonymous »


У меня есть собственный код, который по сути выполняет тройной цикл for. Что я решил ускорить, переместив один из циклов в конструкцию std::for_each с политикой std::execution::par_unseq.

Код обновляет некоторый общий std::vector, который теперь защищен блокировкой мьютекса. В коде нет статических локальных переменных.

std::vector Детектор::Обнаружить( const std::vector& путь, const std::vector& объекты) const { std::vector попаданий; станд::мьютекс MTX; std::for_each (std::execution::par_unseq, объекты.cbegin(), объекты.cend(), [&](авто константа& объект){ std::set уже_хит; for (size_t i = 0; i
Ответить

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

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

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

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

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