Многопоточная сортировка слиянием медленнее, чем итеративный подход C++ ⇐ C++
Многопоточная сортировка слиянием медленнее, чем итеративный подход C++
#include #include #include void mergeSort(std::vector& v, int left, int right) { если (слева < справа) { int Mid = влево + (вправо – влево)/2; std::thread t1(mergeSort, std::ref(v), left, middle); std::thread t2(mergeSort, std::ref(v), middle + 1, вправо); t1.join(); t2.join(); слияние (в, влево, в середине, вправо); } } Я пробовал использовать многопоточный подход для алгоритма сортировки слиянием, но при тестировании разницы между многопоточным и итеративным подходом даже при входных данных размером до 1 МБ итеративный подход работал намного быстрее. Что не так с моим алгоритмом и как мне заставить его работать должным образом?
#include #include #include void mergeSort(std::vector& v, int left, int right) { если (слева < справа) { int Mid = влево + (вправо – влево)/2; std::thread t1(mergeSort, std::ref(v), left, middle); std::thread t2(mergeSort, std::ref(v), middle + 1, вправо); t1.join(); t2.join(); слияние (в, влево, в середине, вправо); } } Я пробовал использовать многопоточный подход для алгоритма сортировки слиянием, но при тестировании разницы между многопоточным и итеративным подходом даже при входных данных размером до 1 МБ итеративный подход работал намного быстрее. Что не так с моим алгоритмом и как мне заставить его работать должным образом?
Re: Многопоточная сортировка слиянием медленнее, чем итеративный подход C++
Тоже интересует этот вопрос
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Многопоточная сортировка слиянием с использованием платформы ForkJoin — отзывы о реализации
Anonymous » » в форуме JAVA - 0 Ответы
- 19 Просмотры
-
Последнее сообщение Anonymous
-