0 / 0 / 0
Регистрация: 06.10.2020
Сообщений: 27
|
|||||||||||
1 | |||||||||||
Как ускорить вычисления потоками?12.03.2022, 13:05. Показов 1243. Ответов 7
Подскажите, пожалуйста, как ускорить такой цикл с помощью потоков?
Пробовал вот так, но не работает
0
|
12.03.2022, 13:05 | |
Ответы с готовыми решениями:
7
Как ускорить вычисления/дать больше ресурсов скомпилированному приложению в Borland C++ Builder Надо ускорить алгоритм вычисления чисел с не повторяющимися цифрами Как ускорить вычисления Как ускорить вычисления Как ускорить программные вычисления? |
0 / 0 / 0
Регистрация: 06.10.2020
Сообщений: 27
|
|
12.03.2022, 15:28 [ТС] | 3 |
Посмотрел, но так и не понял, как openmp для цикла добавить. Можете помочь?
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
12.03.2022, 15:33 | 4 |
нужно синхронизировать доступ. Но это всё равно не добавит скорости. Вообще-то, нужно в каждом вызове лямбды считать свою переменную (без синхронизации), а потом всё это суммировать
векторы лучше захватить по ссылкам в лямбду, чем каждый раз передавать по значению в каждый поток
0
|
1487 / 1414 / 240
Регистрация: 19.02.2010
Сообщений: 3,915
|
|
12.03.2022, 17:25 | 6 |
Сообщение было отмечено Nikis0715 как решение
Решение
А тормозят там не циклы - там долго считается exp() внутри второго сдвоенного цикла.
Просто померь-сравни время работы первого сдвоенного и второго сдвоенного циклов - и увидишь, что любое ускорение первого сдвоенного мало уменьшит общее суммарное время.
0
|
0 / 0 / 0
Регистрация: 06.10.2020
Сообщений: 27
|
|
12.03.2022, 17:30 [ТС] | 7 |
Понял, спасибо. Значит, буду думать, как быстрее экспоненту посчитать
0
|
13.03.2022, 11:03 | 8 | ||||||||||
1). в вектор sumk лучше записывать не sumi а уже готовую степень, количество вычислений степеней экспонент O(N^2) падает до O(N)
0
|
13.03.2022, 11:03 | |
13.03.2022, 11:03 | |
Помогаю со студенческими работами здесь
8
Ускорить вычисления с double (round и др.) Как ускорить Как работать с потоками? Как работать с потоками? Как ускорить циклы? Как ускорить программу? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |