Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура параллельных вычислительных систем.doc
Скачиваний:
100
Добавлен:
01.05.2014
Размер:
594.94 Кб
Скачать

1.6. Обобщенная архитектура параллельных систем

Экзаменуя эволюцию основных подходов к параллельным архитектурам, можно заметить взаимопроникновение архитектур рассмотренных вычислительных систем и наличие общей типовой параллельной машинной организации, показанной на рис 1.15. Типовая параллельная вычислительная система включает в себя множество законченных компьютеров, содержащих один или несколько процессоров (Пр) с кэш-буфепами (С) и память (П), соединенных между собой через масштабируемую коммуникационную сеть. Управлять генерацией выходных сообщений или приемом входных сообщений помогает вспомогательный процессорный блок communication assist (CA) – контроллер.

С одной стороны объединение всех подходов к построению параллельных систем в рамках одной общей структуры может показаться существенным ограничением в области дизайна. С другой стороны все многообразие описанных выше подходов реализуется в communication assist (CA) – контроллере. Все дело в функциональности, которая должна быть им обеспечена, т.е. каков должен быть интерфейс между процессором, системой памяти и сетью.

Не удивительно, что различные программные модели определяют собственные, отличные от других требования к дизайну CA и определяют какие системные операции являются общими и должны быть оптимизированы. В случае разделяемой памяти CA крепко интегрируется с системой памяти (П) для того чтобы управлять событиями в памяти, которые могут потребовать взаимодействия с другими узлами системы (nodes). CA должен также управлять приемом сообщений, доступом к памяти и устанавливать транзит по направлению к другому узлу системы. В случае MPA, коммуникация инициализируется четкой акцией системного или пользовательского уровня, т.е. не требуется «наблюдаемости» системных событий в памяти. Вместо этого необходимо наличие возможности быстрой посылки сообщения и формирования ответа на входящее сообщение. Можно потребовать, чтобы под ответом подразумевалось выполнение операции сравнения тэгов (tag) на совпадение, чтобы буфера были локализованы, чтобы передача данных комментировалась. Параллельные данные и систолические подходы делают акцент на быстрой глобальной синхронизации, которая может быть прямо поддержана сетевыми механизмами или CA. Datafllow архитектура делает акцент на быстром, динамическом распределении вычислений, основанном на входных сообщениях. Систолические алгоритмы предоставляют возможность использовать общие алгоритмические модели в специальных задачах синхронизации параллельного взаимодействия. Даже при этих различиях, важно заметить, что все из рассмотренных подходов имеют много общего, т.е. они требуют инициировать сетевую транзакцию как результат специфичных процессорных событий, и они требуют реализации прямых операций на удаленном узле системы для выполнения необходимых программных действий.

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

Список литературы:

  1. Parallel Computer Architecture: A Hardware/Software Approach/ David E. Culler, Jaswinder Pal Singh// Morgan Kaufmann Published, Inc. San Francisco, California, 1999, 1025 c.

  2. Designing and Building Parallel Programs: Concepts and Tools for Parallel Software Engineering/ Ian T. Foster// Addison-Wesley Publishing Company, Inc. 1998, 381 c.

14