В предыдущем подразделе обсуждалась общая парадигма параллельного
программирования с учетом структуры процесса и выделены демонстративные
примеры в контексте системы ПВМ. В этом подразделе рассматривается
проблема распределения рабочей нагрузки, следующей за стабилизацией
структуры процесса, и описаны несколько обобщенных парадигм, которые
используются при параллельных вычислениях в распределенной памяти.
Обычно используются две общих методологии. Первая, называемая "декомпозицией
данных" или разбиением, подразумевает, что перекрывающиеся задачи
приводят к применению вычислительных операций или преобразований над
одной или большим числом структур данных, а затем эти данные могут
разделяться и обрабатываться. Вторая, называемая "функциональной
декомпозицией", подразумевает разбиение работы на основе отличий
операций и функций. В некотором смысле, вычислительная модель ПВМ
поддерживает оба вида декомпозиции: функциональную (фундаментально
различающиеся задачи выполняют различные операции) и данных (идентичные
задачи оперируют над различными порциями данных).
Знаете ли Вы, что математическое программирование - это (1) раздел математики, исследующий методы решения задач отыскания экстремума на заданном множестве допустимых значений переменных; (2) формализм, используемый для представления знаний о структуре моделируемых объектов в форме задачи отыскания экстремума на заданном множестве допустимых значений переменных.