Последовательный поиск в компьютерных системах может быть менее эффективен параллельного по нескольким причинам:
- Затраты на обмен данными между процессорами. polyakov.imamod.ru Передача информации — медленная операция, и время на неё может «съесть» весь выигрыш, полученный за счёт распараллеливания вычислений. intuit.ru
- Сложность адаптации последовательных алгоритмов к параллельным системам. polyakov.imamod.ru Значительная доля хорошо зарекомендовавших себя алгоритмов не имеет эффективных параллельных аналогов. polyakov.imamod.ru
- Неопределённость в порядке выполнения действий. polyakov.imamod.ru Одна и та же программа на одних и тех же данных может давать верные результаты, но при очередном запуске с теми же данными выдавать непредсказуемый результат. polyakov.imamod.ru
- Проблема «гонки данных». intuit.ru Процессоры, работающие параллельно, могут получать доступ к одним и тем же данным, хранимым в общей памяти, как для чтения, так и для записи. intuit.ru
Однако эффективность параллельного и последовательного поиска зависит от сложности задачи. intuit.ru Для простой задачи с линейной временной сложностью, вероятнее всего, последовательный алгоритм будет эффективнее. intuit.ru Для сложной в вычислительном отношении задачи параллельный алгоритм, скорее всего, окажется эффективнее. intuit.ru