ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ
42
o
разделение обрабатываемых данных на равные блоки небольшого
размера (часто на основе разбиения области решения задачи);
o
разбиение процедур обработки в зависимости от способа разделения
данных;
o
определение необходимых информационных потоков.
•
Функциональное разбиение:
o
разделение процесса вычислений на отдельные процедуры;
o
разбиение данных в зависимости выделенных процедур обработки;
o
определение необходимых информационных потоков.
Рис.5.1.Поэтапная иерархическая декомпозиция процесса вычислений
Контрольные вопросы этапа декомпозиции:
•
Достаточно ли выделенных частей процесса вычислений для эффективной
загрузки имеющихся процессоров (с учетом возможности увеличения их
количества)?
•
Выполненная декомпозиция не увеличивает объем вычислений и необхо-
димый объем памяти?
•
Возможна ли при выбранном способе декомпозиции равномерная загрузка
всех имеющихся процессоров?
Вычислительная
задача
Разбиение
Коммуникация
Оценка эффек-
тивности
Декомпозиция элементов
Изменение схемы
разбиения