Параллельные алгоритмы
От: LaptevVV Россия  
Дата: 10.03.26 11:08
Оценка:
Как известно в С++17 добавили политику выполнения алгоритмов.
Написано, однако в книжке Уильямса, что это не требование, а разрешение.

И возникает естественный вопрос: а оно вообще на многоядерном процессоре параллельно работает ?
Как-то у меня не получается ускорить стандартный последовательный алгоритм — время получается практически то же самое.

И еще вопрос: вот хотелось бы заполнить вектор из 500 000 000 элементов случайными числами параллельно.
generate(std::execution::par, v.begin(), v.end(), gen);

Не возникнет ли здесь UB из-за ГСЧ ?
Например, если
 mt19937_64 gen(rd());

ведь внутренность ГСЧ явно не рассчитана на параллельное получение нескольких случайных чисел...

Что думаете ?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Отредактировано 10.03.2026 11:09 LaptevVV . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.