·
·
·
· А. В. РОДИН, В. Л. БУРЦЕВ
· Московский инженерно-физический институт (государственный университет)
·
· ПАРАЛЛЕЛЬНЫЕ ИЛИ РАСПРЕДЕЛЕННЫЕ
· ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ?
·
На сегодняшний день существуют различные типы распределенных вычислительных систем. В данной статье приведена классификация такого рода систем, а также показана разница между терминами «распределенные вычислительные системы» и «параллельные вычислительные системы».
Существует два термина: «распределенные вычислительные системы» и «параллельные вычислительные системы», которые часто путают друг с другом.
· Термин параллельные системы, как правило, применяется к суперкомпьютерам для того, чтобы подчеркнуть использование многопроцессорной архитектуры. Основными классами архитектур современных параллельных [1] компьютеров являются:
· SMP - симметричные мультипроцессорные системы;
· MPP - массивно-параллельные системы;
· NUMA - системы с неоднородным доступом к памяти;
· PVP - параллельные векторные системы;
· Кластеры – используются в качестве дешевого варианта MPP. В качестве узлов могут выступать серверы, рабочие станции и даже ПК. Для связи узлов используется одна из стандартных сетевых технологий. Кластеризация может осуществляться на разных уровнях компьютерной системы, включая аппаратное обеспечение, операционные системы, программы-утилиты, системы управления и приложения.
· Термин распределенная система [2] обозначает набор независимых компьютеров, представляющийся пользователям единой объединенной системой. В этом определении подчеркиваются два момента. Во-первых, все машины автономны. Во-вторых, распределенная система скрывает сложность и гетерогенную природу аппаратного обеспечения, на базе которого она построена. Организация распределенных систем включает в себя дополнительный уровень ПО, находящийся между верхним уровнем, на котором находятся пользователи и приложения, и нижним уровнем, состоящим из ОС. Такое ПО называется промежуточным.
· На сегодняшний день можно выделить три типа распределенных систем [3]:
· Кластер - простая вычислительная система, ресурсы которой используются одной рабочей группой. Это несколько десятков компьютеров, на которых производятся вычисления, объединенных с помощью локальной сети. В отличие от кластера, определенного в параллельных системах, в распределенных системах кластеризация осуществляется только на уровне программного обеспечения.
· Вычислительная система корпоративного уровня - это вычислительная система, которая обслуживает несколько групп, работающих над разными проектами. В такой сети уже необходимо устанавливать правила совместного использования ресурсов, а в некоторых случаях и взаиморасчетов. Масштаб таких систем, как правило, небольшой, и можно обходиться «ручным» администрированием для организации работы ресурсов и пользователей.
· Глобальная система (грид-система) - это система, в которой участвуют несколько отдельных организаций, географически удаленных друг от друга, которые предоставляют друг другу свои ресурсы по определенным правилам и с определенными протоколами взаимодействия. Здесь прямые административные методы неэффективны, часто практически не применимы, и организационные проблемы и проблемы управления надо решать на уровне ПО.
· Таким образом, употребление терминов зависит от особенностей конкретных систем. При использовании термина «параллельные вычислительные системы» делается акцент на архитектурные особенности, такие как MPP, SMP, NUMA и т. д. Если необходимо описать систему, состоящую из независимых компьютерных архитектур, работающих как единое целое, и сделать акцент на программное обеспечение, благодаря которому эта работа возможна, то следует употреблять термин «распределенная вычислительная система».
·
· Список литературы
·
1. Основные классы современных параллельных компьютеров, Лаборатория НИВЦ МГУ http://www. *****/computers/classes. html
2. Распределенные системы: принципы и парадигмы. – СПб: Питер, 2003. – 877 с.
3. Россия и грид, Информационный Интернет-канал НАУКА и ИННОВАЦИИ http://www. *****/rt/?action=more&id=59
А. В. РОДИН, В. Л. БУРЦЕВ
Московский инженерно-физический институт (государственный университет)
РАСПРЕДЕЛЕННАЯ СИСТЕМА “W-CELL”
Проект по созданию простого, модульного промежуточного программного обеспечения, которое послужит платформой для создания сложных распределенных систем. Сложность системы зависит только от количества модулей и их функциональности.
На сегодняшний день распределенные вычислительные системы, с одной стороны, подразделяются на кластеры, распределенные системы корпоративного уровня, глобальные системы (грид-системы). С другой стороны, распределенные системы подразделяются на вычислительные, информационные, передаточные [1]. Вторая классификация дает представление о тех ресурсах, для работы с которыми эти системы предназначены. Например, WWW – глобальная распределенная система по работе с данными, т. е. глобальная распределенная информационная система, а EU DataGrid – глобальная распределенная информационно-вычислительная система.
В качестве ресурсов в подавляющем большинстве случаев рассматриваются только мощность процессора (вычислительные системы) и хранилища данных (информационные системы), хотя под ресурсом можно понимать любые возможности того или иного компьютера. Например, ресурс – оперативная память, веб-камера, CD/DVD-привод, принтер, программные продукты, установленные на этом компьютере и т. п. Существующий способ реализации подавляющего числа систем, а именно, когда в качестве ресурсов использованы процессор и/или хранилища данных, связан с тем, что распределенные системы еще не достигли этапа своей «зрелости» [2]. Существующие решения ресурсо-ограничены. В идеале, распределенные системы должны работать с любым типом ресурсов. Сейчас это невозможно, и, если приложению в качестве ресурса необходима, например, веб-камера, то придется вносить изменения в промежуточное программное обеспечение распределенной системы.
Данная работа посвящена созданию простой, модульной, легко масштабируемой распределенной системы предоставления ресурсов, свободной от вышеперечисленных недостатков. Система состоит из совокупности модулей, которые добавляются или удаляются из нее. Функциональность системы определяется совокупностью модулей. Таким образом, при добавлении определенного количества модулей система из кластера может превратиться в систему корпоративного уровня и наоборот, или научиться работать с ресурсами, которых раньше не было.
Необходимо определить понятие модуля. Под модулем будем понимать функционально завершенный фрагмент программы. Будем различать стандартные и пользовательские модули. Под стандартным модулем подразумевается модуль, который является неотъемлемой частью ядра системы (Kernel Module, обозначим KM, а входящие модули
). Данные модули могут быть изменены, но не удалены из системы. Это является необходимым и достаточным условием работоспособности системы.
, где N – фиксированное число
Под пользовательским модулем подразумевается модуль, который может быть или отсутствовать в системе (User Module, обозначим UM, а входящие модули
).
, где L – любое неотрицательное число
Таким образом, система (System, обозначим SYS) состоит из совокупности стандартных и пользовательских модулей:
,
и N – фиксировано
При правильном наборе модулей данная система может удовлетворять любой классификации распределенных систем [1], а также достаточно гибко работать с ресурсами. На сегодняшний день данные возможности выходят на первый план.
Список литературы
1. , Бурцев распределенных систем
2. Grid Computing in Research and Education, IBM http:///redbooks


