
- •Реферат
- •Ввидение
- •1. Общие положения
- •2.Характеристики современных компьютерных систем
- •3. Компьютерные системы с программируемой структурой
- •4. Кс с архитектурой типа "процессор в памяти" (Processor-In-Memory) и ассоциативная обработка
- •5. Особенности архитектурно-структурной организации метакомпьютеров
- •6. Технология управления ресурсами распределенных систем – grid
- •Заключение
- •Список литературы
5. Особенности архитектурно-структурной организации метакомпьютеров
Метакомпьютер можно определить как виртуальный компьютер, динамически сформированный из распределенных ресурсов, соединенных высокоскоростными сетями передачи данных [16]. При этом пользователь имеет полную иллюзию использования одной, но гораздо более мощной машины, чем та, что стоит на его столе, и может с ней работать в рамках той же модели, которая принята на его персональном компьютере.
Стратегической целью метакомпьютинга является создание сверхпроизводительной среды на основе компьютерных ресурсов (процессоров, оперативной и внешней памяти, устройств ввода/вывода) современных сетей общего пользования, например, Internet. Такая распределенная и неоднородная по своей природе конструкция даже в корпоративном или региональном, не говоря уже о национальном и транснациональном масштабах, потенциально мощнее любого суперкомпьютера.
Применение метакомпьютера особенно эффективно там, где необходимо выполнить части работы на вычислительных системах различной архитектуры и различной мощности. Например, при использовании метакомпьютера предварительная обработка данных может быть произведена на пользовательской рабочей станции, основное моделирование - на векторно-конвейерном суперкомпьютере, решение больших систем линейных уравнений - на системе с массовым параллелизмом, а визуализацию результатов - на специальной графической станции.
Компонентами "метакомпьютера" могут быть как простейшие ПК, так и мощные системы с массовым параллелизмом. При этом метакомпьютер может не иметь постоянной конфигурации: отдельные компоненты могут включаться в его конфигурацию или отключаться от нее при непрерывном функционировании системы в целом.
Применение идеологии метакомпьютинга позволяет решать пользовательские задачи, которые выставляют очень высокие требования к компьютерным ресурсам, например:
- процессорная мощность - от 0,2 Tflops до 20 Tflops; емкость оперативной памяти - от 100 GB до 200 GB;
- емкость дисковой памяти - от 1ТВ до 2 ТВ;
- ширина полосы пропускания ввода/вывода - от 0,2GB/s. до 0,5 GB/s.
Существует несколько форм организации метакомпьютерной среды, которые, в основном, определяются характером решаемых пользователем задач [16].
При решении вычислительных задач с возможностью распараллеливания использование метакомпьютерной среды дает возможность пользователю запускать свои задачи на удаленных вычислительных установках с требуемым объемом вычислительных ресурсов, которые необходимы для успешного счета. При этом метакомпьютер распределяет задачи в сети в соответствии с запросами и дает возможность пользователю вступать во временное владение найденными ресурсами без персональной регистрации на исполнительной установке, одновременно гарантируя надежную защиту информации. При этом возможен также выход на ресурсы других типов, например, на мощные графические станции со специализированными процессорами или на базы данных с большими объемами информации. Такой вид среды отождествляется в [16] как настольный суперкомпьютер.
Возможен другой вид метакомпьютерной среды, ориентированный на сбор больших объемов данных в реальном времени, поступающих с датчиков, анализ текущей ситуации, выработку решения и выдачу определяющего воздействия. Все это требует тесной интеграции управления, обработки данных разного вида, моделирования процессов, визуализации в реальном времени. Комплексы такого рода, основанные на применении метакомпьютерной среды, получили название интеллектуальных инструментальных комплексов.
И, наконец, метакомпьюторная среда может рассматриваться как сетевой суперкомпьютер, объединяющий с помощью сети отдельные вычислительные установки разной мощности: суперкомпьютеры, серверы, рабочие станции и даже персональные компьютеры. При этом суммарные ресурсы агрегированной архитектуры могут быть использованы в рамках одной задачи.
Известно, что стоимость такого решения даже на базе дорогого и мощного сетевого оборудования все же на порядок меньше цены готового суперкомпьютера (а это миллионы долларов) при сопоставимых характеристиках процессорной производительности.
Метакомпьютерные среды, как правило, создаются в следующей последовательности.
Сначала обеспечивается дистанционный доступ к крупным корпоративным вычислительным центрам (настольный суперкомпьютер). Затем создается единая вычислительная среда в тех же центрах с помощью локальных сетей (сетевой суперкомпьютер). И уже по мере развития аппаратной инфраструктуры осуществляется агрегация вычислительных центров в региональном и далее в национальном масштабе (интеллектуальные инструменты и сетевой суперкомпьютер).
Оценивая задачи разработки ПО метакомпьютинга, можно увидеть, что предстоит переход от операционных сред, рассчитанных на обслуживание автономных установок и нескольких пользователей, к интегрированной программно-аппаратной инфраструктуре коллективного пользования. Ясно, что метафора метакомпьютинга затрагивает все базовые подсистемы современных ОС: управление памятью, процессами и файлами, ввод/вывод, безопасность. На современном уровне оказываются затронутыми и общераспространенная модель программирования, и традиционные интерфейсы.
Масштабируемое ПО метакомпьютера должно сделать доступным все ресурсы сети и при этом полностью скрыть наличие сетевых коммуникаций, включая и присущие им недостатки: нестабильность, высокую вероятность аварий, ограничения по производительности.
Особого внимания заслуживает проблема информационной безопасности в метакомпьютерной среде, где каждый пользователь может претендовать на "чужие" ресурсы. В такой ситуации нужен принципиально иной подход, сохраняющий за каждым административным доменом право проводить собственную политику безопасности и гарантирующий необходимую надежность.
Реальное положение дел приводит к необходимости реализации соответствующих механизмов управления метакомпьютером, которые должны отслеживать вычислительные сложности каждого процесса и возможности сетевого канала между узлами. Поэтому стремятся упростить процедуру управления. Для этого в области высокопроизводительных приложений применяется "промежуточное" решение -кластерные системы пакетной обработки заданий для управления вычислительным процессом в многоузловых системах, объединяющих локальной сетью многопроцессорные установки и рабочие станции.
Пользователи могут запускать задания не на конкретную машину, а на кластер в целом. Задания оформляются обычным образом с добавлением паспорта требуемых ресурсов: времени счета, объема памяти и дискового пространства, количества процессоров и т.д. Система пакетной обработки ведет очереди заданий и выполняет их распределение по наличным ресурсам, оптимально балансируя нагрузку на узлы.
Помогая пользователям, кластерные системы сильно облегчают администраторам управление ресурсами вычислительной техники, упорядочивая их взаимоотношения с пользователями. Например, простаивающие по ночам персональные машины могут загружаться долговременными расчетами в пакетном режиме.
Примерно такая же идеология управления ресурсами, но уже на уровне глобальных сетей типа Internet поддерживается программной метакомпьютерной средой Globus [16], развиваемой в рамках проекта РАС! Здесь пул ресурсов формируется из крупных сайтов, разбросанных по всему миру. Информация об их состоянии динамически собирается на выделенном сервере, к которому могут обращаться все сертифицированные пользователи. Уже сегодня Globus (http://www.globus.org/) представляет собой развитую среду, в которую входят средства управления сетевой передачей, дистанционного доступа к файлам, обеспечения безопасности и т.д.
В рамках проекта Globus разработан ряд программных средств:
- GlobusResourceAllocationManager - единообразный интерфейс к различным "локальным" системам распределения нагрузки (LSF, NQE, LoadLeveler); для описания требований приложения к ресурсам разработан специальный язык RSL (ResourceSpecificationLanguage);
- GlobusSecurityInfrastructure - система аутентификации на базе открытого ключа и Х.09-сертификатов;
- MetacomputingDirectoryService (MDS) - репозиторий информации о вычислительных ресурсах, входящих в метакомпьютер;
- Nexus - коммуникационная библиотека;
- HeartbeatMonitor (НВМ) - средство мониторинга, позволяющее определить сбой некоторых машин и процессов, входящих в метакомпьютер;
- GlobusAccesstoSecondaryStorage (GASS) - средство доступа к удаленным данным через URL.
Оценивая общее состояние проблемы создания метакомпьютер-ного ПО, можно предложить вариант двухуровневой архитектуры: первый уровень (локальный) включает систему управления пакетной обработкой, распределенную файловую систему и систему эмуляции распределенной общей памяти и второй (глобальный), на роль которого претендует проект Globus, интегрирующий функции управления ресурсами, запуска заданий, глобальной файловой системы и безопасности.
Таким образом, доминирующими направлениями в создании вычислительных структур высокой производительности стали [17]:
- многопроцессорные комплексы с массовым параллелизмом, объединенные высокоскоростной внутренней сетью (в том числе, высокопроизводительные вычислительные кластеры и суперкомпьютеры);
- сетевая структура общего пользования, которую представляют Internet и сети нового поколения.
Механизмы и инструментальные средства их реализации в задачах, постановка которых связана с распределенной обработкой больших объемов данных и манипулированием ими, должны эффективно отображаться на возможности, предоставляемые для этого Internet. Подходом, обеспечивающим такое отображение и является метакомпьютинг.