русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Тема: «Вычисление и обмен данных в масштабируемых системах».


Дата добавления: 2013-12-23; просмотров: 1211; Нарушение авторских прав


РИСУНОК

РИСУНОК

DSM система – системы с распределенной разделяемой памятью.

DSM системы могут быть реализованы различными способами. Общим является наличие помимо КЭШа локальной памяти в каждом процессоре. Узел может состоять из нескольких процессоров и иметь архитектуру SMP. Поддерживается общее адресное пространство, однако при этом память является распределенной по узлам и время доступа зависит от расположения данных. Поэтому некоторые DSM системы получили название NUMA (Non-Uniform memory access) – системы с неоднородным доступом к памяти. Один из способов организации данной архитектуры – отказ от аппаратной поддержки когерентностей КЭШей. Процессорные узлы в таких системах объединяются сетью, в узлах которой размещаются специальные контроллеры, анализирующие адрес обращения к памяти. Если данные размещаются в памяти удаленного узла, то его контроллеру посылается сообщение для обращения к этим данным. Разделяемые данные не заносятся в КЭШи, что снимает проблему когерентности, но усложняет процесс программирования таких архитектур.

Структура NUMA системы.

 

 

Справочник распределен по узлам системы и хранит состояние каждого блока данных, который может заноситься в кэш. В справочнике содержится информация о том, в каких КЭШах имеются копии этого блока данных, а также сведения о модификациях. Пусть узел 1 обращается к ячейке с адресом А в основной памяти, не являющейся локальной памятью узла 1. Справочник узла 1 анализирует адрес А распознает, что он относится к локальной памяти узла N, который выбирает значение ячейки А из своей локальной памяти и передает его справочнику узла 1. В кэш узла передается значение модификации (в тот кэш, в котором имеется копия соответствующих данных). Размер справочника пропорционален размеру основной памяти системы. Иерархичность доступа к памяти в NUMA архитектурах сдерживает увеличение числа процессорных узлов. Существуют также и другие разновидности систем с распределенной разделяемой памятью: COMA (Cash Only Memory Architecture) и с рефлексивной памятью RM (Reflective Memory).



В данной архитектуре локальная память узла строится по принципу кэш памяти и называется притягивающей. Поступающий в узел блок данных размещается в КЭШе процессора и притягивающей памяти. Каждый блок данных снабжается тегом, определяющим адрес блока и его состоянием. Если требуемый блок данных не содержится в КЭШе, то контроллер памяти узла просматривает теги притягивающей памяти с целью извлечения необходимых данных из локальной памяти узла. При их отсутствии запрашивает другие процессорные узлы системы. Притягивающая память функционирует подобно КЭШу, однако данные, удаляемые из нее, должны быть размещены в притягивающей памяти другого узла. Если существует несколько копий блока данных, то одна из них объявляется основной. В отличие от других копий, основная обязательно перемещается в притягивающую память другого узла, если нет места для вновь поступающих в узел данных, таким образом для COMA архитектуры характерны перемещении данных между отдельными узлами, что создает дополнительную нагрузку на коммуникативную сеть.

Главной особенностью RM архитектур является то, что каждая копия разделяемых данных во всех процессорных узлах имеет одно и то же значение. Страницы памяти узла делятся на локальные неразделяемые и глобально разделяемые. Рефлексивная память содержит глобально разделяемые страницы, отображаемые в единое адресное пространство. В RM архитектуре для пользователя имеется возможность управлять степенью разделения данных путем заполнения таблиц трансляции адресов, отображающих область локальной памяти узла в единое адресное пространство. Таким образом фиксированная адресация всей памяти отсутствует, вместо нее применяется отображение в единое адресное пространство выделенных страниц. Взаимные преобразования локальных адресов узла и глобальных адресов осуществляется с помощью адаптера коммуникационной системы.

Массово параллельные системы. MPP

Эти системы характеризуются большим числом процессорных узлов. Узлы обычно состоят из одного или нескольких процессоров локальной памяти и нескольких устройств ввода/вывода. Чаще всего в MPP системах реализуется архитектура без разделения ресурсов. В каждом узле работает своя копия операционной системы, а узлы объединяются специализированной коммуникационной средой. Если узел управляется своей собственной операционной системой и имеет уникальное адресное пространство памяти, то не требуется аппаратного обеспечения когерентности. Когерентность в этом случае обеспечивается программными средствами на основе техники обмена сообщениями.

Общей особенностью масштабируемых систем является распределенность процессов обработки и распределенность данных. С одной стороны в распределение вычислений и данных заложена возможность повышения производительности таких систем, с другой стороны - интенсивный обмен данными, часто и не вызванный информационными зависимостями между процессами обработки как в COMA архитектуре, сильно загружает коммуникационную среду. Это ограничивает возможности масштабирования систем. Следовательно, эффективность выполнения программ в масштабируемых архитектурах в значительной мере зависит от организации взаимодействия распределенных процессов.


 

1. Модель обмена сообщениями.

2. Модель общей памяти.

3. Прямой доступ к удаленной памяти.

4. Парадигмы программирования.

Модель обмена сообщениями.

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

Разновидности моделей обмена сообщениями определяются реализацией механизмов и организации среды для взаимодействия процессов. Различают не блокирующие и блокирующие режимы обмена. При не блокирующем обмене ни один из взаимодействующих процессов не приостанавливается, дожидаясь приема или передачи сообщения. Если обмен блокирующий, то передающий или принимающий процесс продолжает работу лишь после подтверждения получения сообщения. Характер обмена сообщения может быть синхронным или асинхронным. При синхронном обмене один из взаимодействующих процессов, достигая некоторого состояния, в котором он готов к обмену, переходит в режим ожидания до тех пор, пока другой процесс не достигнет соответствующего состояния. При асинхронном обмене возврат из процедуры взаимодействия осуществляется сразу же после передачи сообщения без ожидания завершения приема. В случае асинхронно-синхронного обмена операция передачи сообщения является асинхронной, а операция приема – синхронной.

Основные достоинства модели обмена сообщениями заключаются в следующем:

1) Снимаются проблемы разделяемой памяти, связанные с согласованным состоянием данных;

2) Уделяется внимание обмену данными, который требует существенных затрат времени даже при использовании высокоскоростных сетей;

3) Учитываются такие аспекты, как произвольная структура (длина) сообщений и возможно различные последовательности (недетерминизм) формирования составных частей сообщения, что характерно для распределенных сетей с коммутацией пакетов.



<== предыдущая лекция | следующая лекция ==>
Мультипроцессорные системы. | Модель общей памяти.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.