Параллелизация

Материал из ЭНЭ
Перейти к: навигация, поиск

Паралеллизация: процесс перевода (последовательной) программы или алгоритма в распределённую (параллельную) форму; также методика такого перевода.

Обычно параллелизация конкретного алгоритма или программы производится на основе определённой модели параллельного программирования; многие типовые задачи имеют готовые решения по параллелизации.

См. также: декомпозиция по данным, рекурсивная декомпозиция, поисковая декомпозиция, упреждающая декомпозиция.

Вообще для последовательной программы или алгоритма, независимо от выбора модели параллельного программирования, в процессе параллелизации можно выделить типичные стадии (шаги): декомпозиция (разделение на элементарные задачи) и планирование работы полученной совокупности элементарных задач. Иногда стадия планирования рассматривается как составная, состоящая из: а) стадии распределения задач между процессами параллельного исполнения; б) стадии назначения процессов на имеющиеся вычисляющие устройства.

Ю.Т.

Источники

  • Introduction to parallel computing / 2nd ed. ...

Открытая литература

  • Parallel and distributed computation : numerical methods / D.P. Bertsekas, J.N. Tsitsiklis. – Prentice-Hall, 1989 ; Athena Scientific, 1997. – Режим доступа: [1]. — [Открытый электронный вариант. Параллельные решения многих типовых задач.]
  • Designing and Building Parallel Programs / I. Foster. – Addison Wesley, 1995. – Режим доступа: [2]. — [Открытый электронный вариант. Общий, неспециализированный курс. Большой раздел по программным средствам.]
  • Книжный раздел сайта Лаборатории Параллельных информационных технологий НИВЦ МГУ: [3]. — [Труды В.В. Воеводина и Вл.В. Воеводина; пособия А.С. Антонова по работе с MPI и OpenMP.]
  • Книжный раздел сайта рабочей группы Белорусского государственного университета (Г.И. Шпаковский, Н.В. Серикова, А.Е. Верхотуров): [4]. — [Труды по параллельному программированию, изданные сотрудниками БГУ; преимущественно, рассматривается работа со средой MPI.]