Какие алгоритмы нельзя распараллелить?


24

Есть ли какой-нибудь алгоритм, который очень трудно распараллелить, или исследование все еще активно?

Я хотел знать о любом алгоритме или любой области исследований в параллельных вычислениях.

Все, что я искал, имеет «параллельную» реализацию. Просто хочу изучить некоторые неизученные области параллельных вычислений.


1
Что именно вы подразумеваете под "распараллеливание"? Можно утверждать, что каждый алгоритм распараллеливается, но не всегда хорошо. (В любом случае, было бы интереснее найти новые алгоритмы.)
Рафаэль

Вы правильно поняли, моя цель - найти алгоритмы, которые трудно распараллелить. Можете ли вы рассказать мне больше о том, что вы имеете в виду, находя новые алгоритмы?
Полиномиальный протон

Ты не ответил на мой вопрос. Сколько процессоров вы разрешаете (5, , n , )? Какой тип ускорения и / или эффективности вам нужен (любое ускорение, линейное ускорение по числу процессоров, общее логарифмическое время)? pn
Рафаэль

На данный момент я ищу алгоритмы, которые трудно распараллелить, то есть исследовать поле, а затем принять соответствующее решение после их изучения.
Полиномиальный протон

Ответы:


11

это в основном открытая исследовательская проблема, относящаяся к вопросу NC =? P, где NC рассматривается как класс эффективно распараллеливаемых алгоритмов.

В влиятельном / широкомасштабном обзоре из Беркли «Пейзаж параллельных вычислений» есть классы алгоритмов или паттернов параллелизма, разделенных на «гномов». из первых 1 идентифицированных, похоже, что проблемы тел могут быть относительно трудными для эффективного распараллеливания при увеличении n, поскольку существует n 2 взаимодействий между всеми n точками.nnn2n

позже они добавили 6 других в статье и предположили, что последний, называемый «FSM» (p14), где проблема связана с вычислением вычислений, подобных FSM (таких как е состояние FSM), может быть противоположностью «смущающе параллельного» чего-то они предлагают называть «смущающе последовательным».N

посмотрите также есть ли известные алгоритмы в науке. сост. это не может быть распараллелено , scicomp.se


1
Гениально, спасибо за ссылки и объяснения!
Полиномиальный протон

11

В этой статье представлен ряд проблем, которые легко решить последовательно, но трудно распараллелить: http://en.wikipedia.org/wiki/P-complete

Задача о значении схемы («учитывая логическую схему + ее вход, скажите, что она выводит») является хорошей отправной точкой - ее легко понять, легко решить с помощью последовательных алгоритмов, и никто не знает, можно ли ее эффективно распараллелить.


Это предполагает теоретически сложное определение «параллелизуемости», которое может представлять интерес, а может и не представлять.
Рафаэль

@Raphael: AFAIK, многие классические P-полные задачи трудно распараллелить не только в теории, но и на практике (даже если у вас относительно небольшое количество процессоров).
Юкка Суомела

@JukkaSuomela Есть также случаи, когда теория сложности предполагает твердость, но на практике все работает хорошо. Кроме того, положительные результаты не имеют большого значения на практике .
Рафаэль

Можно добавить, что с теоретической точки зрения сложности не совсем ясно, существуют ли вообще «непарализуемые» проблемы , поскольку неизвестно, является ли , как это делает vzn в своем ответNC=п
Корнелиус Бранд

7

С практической точки зрения, вы спрашиваете о последовательных алгоритмах. Есть много кандидатов, таких как хэш-цепочка, которая, как полагают, очень трудно распараллелить. Hash-цепочка широко используется в криптографии. Например, схема хэширования паролей bcrypt была разработана, чтобы затруднить ускорение хеширования посредством распараллеливания. Другой пример - повторное возведение в квадрат (опять же, в криптографии).


Я нашел несколько статей, которые распараллеливают хэш-цепочку, но не прочитали ее полностью. Я пройду через то же самое. В любом случае, спасибо за вклад!
Полиномиальный протон

1
@TheUknown Ссылки на эти документы приветствуются.
m33lky

@ m33lky Извините, у меня сейчас нет таких бумаг. Это было еще в январе, и я наконец продолжил свои исследования по другой теме. Тем не менее, вы можете посмотреть в Интернете на Google ученый, и я уверен, что вы получите много статей
Полиномиальный Протон

С практической точки зрения также стоит упомянуть, что если алгоритм, например, связан с памятью, то распараллеливание не очень поможет: stackoverflow.com/questions/868568/…
Сиро Сантилли,
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.