textarchive.ru

Главная > Документ


Паралельні обчислення та розподілені системи

УДК 681.3.06

А.Е. Дорошенко, О.В. Алистратов, Ю.М. Тырчак, А.П. Розенблат, К.А. Рухлис

Системы Grid-вычислений — перспектива для научных исследований

Анализируется развитие Grid-систем, насчитывающих уже три поколения: от систем первого поколения, предвестников современных Grid, через системы второго поколения с программным обеспечением промежуточного уровня для поддержки крупномасштабных данных и вычислений — к системам третьего поколения, где центром внимания становится сервисно-ориентированный подход и распределенное глобальное сотрудничество. Обсуждается соотношение между Grid и Web и рассматривается перспектива использования конвергенции Web- и Grid-технологий в научных исследованиях.

Введение

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

С тех пор, как стало возможным объединять ЭВМ в компьютерные сети, проблемы проектирования и развертывания распределенных компьютерных систем исследуются уже в течение многих лет. Все большее количество исследований выполняются в области распределенных широкомасштабных (глобальных) вычислений. Эти группы разрабатывают промежуточное программное обеспечение (middleware), библиотеки и инструментальные средства, которые позволяют совместно использовать территориально распределенные, но объединенные ресурсы как единую мощную платформу для выполнения параллельных и распределенных приложений. Такой подход к вычислениям ранее был известен под несколькими названиями, такими, как метакомпьютинг [1], масштабируемые или глобальные вычисления, в последнее время — вычисления Grid [2].

В недавней работе одного из пионеров этого направления [3] понятие Grid-системы определено как "гибкое, безопасное, скоординированное совместное использование ресурсов динамическими образованиями из лич­ностей, учреждений и ресурсов". Оно подчеркивает значение аспектов информации, существенных для обнаружения ресурса и его интероперабельности в составе ансамблей с другими ресурсами. Однако жизнь не стоит на месте, и новые проекты по разработке Grid-систем [4] уже акцентируют на продолжение этой линии исследований путем перехода от информации к знаниям. Это связано также с эволюцией Web-технологий и стандартов, таких, как XML для поддержки обменов между компьютерами, и RDF для представления метаданных.

Почему же стал возможным и необходимым такой резкий рывок в осознании нового уровня использования компьютерной техники и почему это так важно для научного мира? В [4] приведены следующие сравнительные данные. Персональный компьютер в 2001-м году имел примерно такую же скорость, как суперкомпьютер в 1990-м, а десяток лет назад биологи считали за счастье иметь возможность промоделировать на компьютере одну молекулярную структуру. Теперь персональные компьютеры оснащены сотнями Гбайт (1Гб=109 байт) долговременной памяти хранения — столько, сколько имел целый суперкомпьютерный центр в 1990-м, и это дает возможность вычислять структуры сложных ансамблей макромолекул и анализировать тысячи вариантов лекарственных препаратов. К 2006-му году ожидается, что проекты по физике высоких энергий, в том числе Large Hadron Collider (LHC) Европейского центра ядерных исследований (CERN), произведут десятки петабайт (1ПБ=1015 байт) данных в год. Современные широкополосные сети теперь работают со скоростью 155 Мбс (мегабит/с), что на три порядка превышает скорость в 56 кбс (килобит/с), с которой соединялись американские суперкомпьютерные центры в 1985-м году [5]. Но чтобы работать с зарубежными коллегами на наборах данных, объем которых измеряется петабайтами, ученым теперь требуются скорости в десятки гигабит в секунду (1Гбс=109 бит/с).

То, что теперь понимают под термином Grid, представляет собой инфраструктуру, построенную на основе Интернета и Всемирной паутины (World Wide Web), которая обеспечивает масштабируемые, безопасные и быстродействующие механизмы для обнаружения и доступа к удаленным вычислительным и информационным ресурсам. Технологии Grid могут дать возможность ученым разделять ресурсы для географически распределенных групп в беспрецедентном масштабе и такими способами, которые ранее были просто невозможны [2­­–4].

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

1. Качественный скачок в
коммуникационных технологиях

Для оценки технологического изменения полезной метрикой обычно считается средний период времени, в течение которого удваиваются основные функциональные показатели изделий (производительность, емкость и т.п.) или, что более или менее эквивалентно, вдвое уменьшается их цена. Для памяти хранения, скорости сетей и вычислительной мощности эти периоды составляют около 12, 9, и 18 месяцев соответственно. Различное значение констант, связанных с этими тремя экспонентами, имеет принципиальное значение.

Ежегодное удвоение емкости устройств хранения данных, измеряемое количеством бит на единицу площади, уже снизило стоимость терабайта (1ТБ=1012 байтов) дисковой памяти до величины ниже $10 000. Ожидается, что тенденция продолжится, и разработчики в области экспериментальной физики и высокоточного моделирования с большой разрешающей способностью планируют разработку архивов данных объемом в петабайты [4]. Такие большие объемы данных требуют соответствующих более мощных средств для анализа. Однако, несмотря на серьезные продвижения в индустрии микропроцессорной техники, темпы роста производительности компьютеров отстают от таковых для средств хранения информации. Удваиваясь ”только” каждые 18 месяцев, мощность компьютеров потребует пять лет для своего увеличения на порядок.

Вместе с тем разительные изменения произошли за последнее время в коммуникационных технологиях и организации компьютерных сетей. Благодаря таким нововведениям, как добавление примесей при производстве оптоэлектронных устройств, производительность широкомасштабных сетей удваивается каждые девять месяцев, а каждые пять лет это дает увеличение на два порядка. Так, сеть NSFnet, которая соединяет суперкомпьютерные центры Национального научного фонда США, наглядно иллюстрирует эту тенденцию. Если в 1985-м году магистральные каналы NSFnet использовались с беспрецедентной тогда скоростью 56 кбс [5], то в 2002-м они работали в сети TeraGrid (/) уже на скорости 40 Гбс, т.е. увеличение произошло на шесть порядков за 17 лет [4].

Таким образом, удвоение производительности сети по отношению к росту мощности компьютеров каждые 18 месяцев означает, что концентрация вычислительных ресурсов в одном месте для крупномасштабного анализа становится нецелесообразной. Отсюда вытекает также, что если такое соотношение темпов сохранится, то очень скоро связь станет почти бесплатной и практически неограниченной. Чтобы использовать это обилие пропускной способности, нужно находить новые способы работы сетей с интенсивной связью: объединение вычислительных ресурсов в пулы, обрабатывающие потоки большого количества данных, повсеместное внедрение датчиков и автоматизация обработки сенсорной информации в быту и на производстве, а также внедрение (колаборативных) сред совместной работы, устраняющих необходимость в дорогостоящих коман­дировках.

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

2. Первое поколение Grid

Ранние попытки по созданию Grid были предприняты как проекты по связи суперкомпьютеров между собой; в то время этот подход был известен как метакомпьютинг (metacomputing). Этот термин был употреблен в проекте CASA, одном из нескольких проектов системы гигабитной связи в США [1]. К середине 1990-х отмечают появление раннего метакомпьютинга или Grid-сред. Как правило, цель ранних проектов метакомпьютинга заключалась в обеспечении вычислительными ресурсами некоторого набора приложений, требующих высокой производительности. Двумя показательными проектами этого типа были FAFNER [6] и I-WAY [7].

Они во многом различались, но для обеспечения эффективной работы должны были решить ряд аналогичных проблем, таких, как связь, управление ресурсами и манипулирование удаленными данными. Свои решения предоставлять ресурсы метакомпьютинга они попытались выполнить с противоположных концов вычислительного спектра. Если FAFNER мог вовлекать в работу любую рабочую станцию с объемом памяти не менее 4 Мб, то I-WAY предназначался для объединения ресурсов больших суперкомпьютерных центров США.

Проект FAFNER был нацелен на решение задачи разложения на множители для алгоритма шифрования с публичными ключами по методу RSA, широко используемому, например, в протоколе безопасных соединений SSL (Secure Sockets Layer). Разложение на множители в вычислительном отношении занимает очень много времени. По этой причине были разработаны параллельные алгоритмы разложения на множители, выполнение которых можно было распределить. Алгоритмы оказались тривиально параллельными и не требовали никакой связи между отдельными ветвями после начальной установки, которая позволила многим исполнителям выполнять некоторую небольшую часть большой задачи разложения на множители. Так был создан проект по разложению на мно­жи­тели через Web, известный как FAFNER (Factoring via Network-Enabled Recursion).

В проекте использовался новый метод, под названием NFS (Number Field Sieve), разложения на множители на основе вычислительных Web-сер­веров. Исполнитель на основе Web-форм вызывал на сервере сценарии CGI (стандартного интерфейса обмена данных), написанные на языке Perl. Исполнители, основываясь на некотором наборе Web-страниц, могли обращаться к широкому набору сервисов для шагов просеивания при разложении на множители, а именно: распространению программного обеспечения NFS, документации проекта, анонимной регистрации исполнителя, распространению просеивающих зада­ний и др. Сценарии CGI поддерживали также администрирование кластера компьютеров, направляя активность отдельных просеивающих рабочих стан­ций на ночное время, чтобы уменьшить пересечение с работой их владельцев. Исполнители загружали и монтировали просеивающего програм­много демона, который становился их Web-клиентом, использовавшим прото­кол HTTP для получения заданий и возвращения резуль­татов через сценарий CGI на Web-сер­вере.

Чтобы сделать этот подход успешным, важны три фактора:

  • реализация программы NFS позволяла рабочим станциям с 4 Мб памяти выполнить полезную работу, используя малые границы и малое решето;

  • поддержка анонимной регистрации; исполнители могли добровольно давать свои ресурсы аппаратных средств, объявляясь только администратору локальной сети;

  • формирование иерархической сети Web-серверов из сайтов, задействованных для локального выполнения пакета сценария CGI, с целью минимизации критической потребности в администрировании сети, что позволяло просеивать данные круглосуточно с наименьшим вмешательством оператора.

Проект FAFNER был отмечен наградой в конкурсе TeraFlop на конференции по суперЭВМ 1995 г., что позволило появиться множеству других проектов, основанных на метакомпьютинге.

Проект I-WAY, напротив,был экспериментальной высокоэффективной сетью, связывающей множество высокопроизводительных компьютеров и развитых сред визуализации. Проект начался в начале 1995 года с идеи не строить новую сеть, а интегрировать существующие сети высокой пропускной способности. Виртуальные среды, наборы данных и компьютеры, постоянно находящиеся в семнадцати различных городах США, были соединены десятью сетями с переменной пропуск­ной способностью. При этом использовались различные технологии марш­рутизации и коммутации. Сеть была основана на технологии асинхронной передачи данных АТМ, которая в то время находилась в стадии становления, и поддерживала протоколы TCP/IP над АТМ и непосредственно ATM-ориенти­рованные протоколы.

Для стандартизации интерфейсов программирования и управления клю­чевые сайты установили I-POP-серверы ("пункты присутствия"), кото­рые действовали как шлюзы стыковки к I-WAY. Серверы I-WAY были рабочими станциями под UNIX, сконфигурированными для выполнения среды стандартного программного обеспечения I-Soft. На I-Soft возлагалось решение задач, связанных с неоднородностью, масштабируемостью, производительностью и безопасностью. В проекте I-WAY был также разработан планировщик ресурсов (вычислительный брокер ресурсов CRB), который состоял из протоколов CRB-пользователь и CRB-планировщик. Фактическое выполнение брокера CRB было распределено между центральным планировщиком и множеством локальных демонов-планировщиков, по одному на I-POP-сервер. Центральный планировщик вел очереди задач и таблицы, представляющие состояние локальных машин, помещая задания на обработку и информацию о состоянии вычислений в распределенную файловую систему AFS, которая давала возможность хост-машинам совместно использовать ресурсы локальных и глобальных сетей.

В I-POP-серверах защита обеспечивалась с использованием клиента telnet, модифицированного для использования аутентификации и шифрования Kerberos. Кроме того, CRB играли роль агента, исполняющего последовательное удостоверение подлинности доступа к ресурсам I-WAY от имени пользователя. Для поддержки инструментальных средств библиотека обменов Nexus поддерживала автоматические конфигурационные механизмы, которые давали возможность выбрать соответствующую конфигурацию в зависимости от используемой технологии, например связь через TCP/IP или АТМ. Библиотека MPICH (переносимая реализация стандарта MPI) была также расширена для использования Nexus. Проект I-WAY определял несколько типов приложений: вычисления на суперЭВМ; доступ к удаленным ресурсам; виртуальный мир, видео и графические интерфейсы.

Таким образом, FAFNER и I-WAY попытались создать метакомпьютерную среду для интеграции ресурсов, но с разных сторон. FAFNER стал широкомасштабной вездесущей (ubiquitous) системой, которая могла работать на любой платформе с Web-сервером. Как правило, его клиентуру составляли обычные терминальные компьютеры, в то время как I-WAY объединил ресурсы в крупных центрах вычислений на суперЭВМ. Два проекта также различались типами приложений, которые могли использовать их среды. FAFNER был приспособлен к конкретному приложению разложения на множители, которое само по себе было тривиально параллельным и не зависело от быстрых коммуникаций. I-WAY был разработан для другого набора приложений различной производитель­ности, которые обычно нуждались в быстрых обменах и мощных ресурсах. Однако оба проекта испытывали недостаток масштабируемости. Они были весьма новаторскими и успешными, и каждый проект был в авангарде метакомпьютинга, прокладывая путь ко многим последующим проектам Grid второго поколения. FAFNER стал предвестником проектов, подобных SETI@home [8] и [9], а I-WAY — Globus [10] и Legion [11].

3. Второе поколение Grid

Акцент ранних работ по Grid-вычислениям был, в частности, вызван потребностью связать ряд американских национальных центров суперЭВМ, и проект I-WAY успешно достиг этой цели. Но сегодня инфраструктура Grid может объединять вместе не только специализированные центры суперЭВМ, она постепенно превращается в повсеместную распределенную инфраструктуру глобального масштаба, которая вместе с технологиями сетей высокой пропускной способности и принятием стандартов может поддерживать различные приложения, требующие крупномасштабных вычислений и данных. Такая перспектива для Grid сформулирована в [12] и расценивается как второе поколение этих систем.

Системы второго поколения сосредоточились на трех главных проблемах.

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

  • Масштабируемость. Размер Grid может возрастать до миллионов единиц ресурсов. Это порождает проблему потенциального уменьшения ускорения вычислений по мере увеличения размера Grid. Поэтому приложения, которые требуют большого количества географически распределенных ресурсов, должны быть разработаны с учетом устойчивости к задержкам и использования местоположения ресурсов. Кроме того, поскольку увеличение масштаба также предполагает пересечение большого количества административных границ, есть потребность в решении проблемы доверия и аутентификации (удостоверения подлинности). Приложения большого масштаба могут создаваться как композиции других приложений, что увеличивает интеллектуальную сложность систем.

  • Адаптируемость. В Grid неисправность ресурса есть правило, а не исключение, поскольку вероятность отказа при таком количестве ресурсов очень высока. Поэтому администраторы ресурсов или сами приложения должны динамически приспосабливать свое поведение так, чтобы они могли получать максимальную производительность на используемых ими ресурсах и сервисах.

Программное обеспечение (ПО) промежуточного уровня (middleware) обычно рассматривают как ПО, расслоенное между операционной системой и приложениями и предоставляющее ряд сервисов для корректного и эффективного их функционирования. В последнее время его стали воспринимать как способ интегрирования приложений, работающих в распределенных разнородных средах. В Grid промежуточное ПО используется, чтобы скрыть разнородность платформ и предоставить потребителям и приложениям однородную и монолитную (бесшовную — seamless) среду с набором стандартизированных интерфейсов и сервисов.

Принятие и использование стандартов также является ключевым моментом в борьбе с неоднородностью. Стандарты и системные интерфейсы API позволяют переносить сервисы и приложения на множество компьютерных систем, использующихся в среде Grid. Очевидно, что если Grid состоит из n компонентов, то лучше принять n соглашений о приведении форматов обмена к стандартному, чем иметь n2 преобразователей каждого формата в каждый.

Далее в этом разделе рассматриваются общие требования второго поколения Grid, а также его базовые технологии, брокеры ресурсов и планировщики, полностью интегрированные системы и одноранговые (peer-to-peer) системы.

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

  • Административная иерархия. Это способ распределения среды Grid, который потенциально способен обеспечить глобальный масштаб сети. Административная иерархия определяет, в частности, как распространяется административная информация по сети.

  • Сервисы связи. Инфраструктура связи должна поддерживать протоколы для транспортировки массивов данных и потоковых данных, поддержки групповых обменов и использования распределенных объектов. Сетевые сервисы также обеспечивают Grid важными параметрами качества обслуживания QoS, такими, как задержка, пропускная способность, надежность, отказоустойчивость, и др.

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

  • Сервисы именования. В Grid имена используются для различения большого многообразия объектов, таких, как компьютеры, сервисы или данные. Сервис именования обеспечивает универсальное пространство имен во всей распределенной среде. Типичным примером сервиса именования является DNS, обеспечиваемый международным стандартом X.500 (схема Internet).

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

  • Защита и авторизация. Любая распределенная система включает все четыре аспекта безопасности: конфиденциальность, целостность, аутентификация и отчетность (accounta­bility). Безопасность в пределах Grid — это комплексная проблема, требующая от различных ресурсов автономного управ­ления и взаимодействия между собой таким способом, который не влияет на использование ресурсов.

  • Состояние системы и отказоустойчивость. Для обеспечения надежной и устойчивой среды важно наличие средств управления ресурсами и приложениями. Для этого должны быть развернуты инструментальные средства мониторинга ресурсов и приложений.

  • Управление ресурсами и планирование. Администрирование процессорным временем, памятью, сетью, памятью хранения и другими компонентами в Grid является важной частью эффективного планирования при­ложений. С пользовательской точки зрения управление ресурсами и планирование приложений должны быть прозрачными, а их взаимодействие с управлением — сводиться к разрешению на выполнение приложений.

  • Пользовательский и административный графические интерфейсы. Интерфейсы сервисов и доступных ресурсов должны быть интуитивными и легкими в использовании, а также разнородными по природе. Как правило, пользовательский и административный доступы к приложениям Grid основаны на Web-сервисах.

3.2. Базовые технологии для Grid второго поколения.В настоящее время имеется большое количество проектов, связанных с Grid и имеющих дело с такими категориями, как инфраструктура, сервисы, сотрудничество, специальные приложения и порталы домена. К наиболее значительным относится проект Globus [10].

Globus обеспечивает программную инфраструктуру, которая дает возможность приложениям работать с распределенными разнородными вычислительными ресурсами как с единой виртуальной машиной. Проект Globus — это исследовательская программа в США, ставящая своей целью построение вычислительных сетей Grid. Вычислительная сеть в этом контексте является программно-аппаратной инфраструктурой, которая обеспечивает надежный, непротиворечивый и проникающий (pervasive) доступ к предельным вычислительным возможностям систем, несмотря на географическое размещение ресурсов и их потребителей. Центральным элементом системы Globus является инструментарий Globus Toolkit, который определяет основные сервисы и возможности, требующиеся для создания Grid. Инструментарий состоит из набора компо­нентов, реализующих базовые сервисы, такие, как защита, размещение ресурса, управление ресурсами и связь.

Для вычислительных сетей Grid необходимо поддерживать широкое мно­гообразие парадигм программирования и приложений. Следовательно, вместо обеспечения универсальной модели программирования, такой как объектно-ориентированная модель, инструментарий Globus Toolkit обеспечивает набор сервисов, которые разработчики инструментальных средств или приложений могут использовать для их специфических нужд. Он создан как слоистая архитектура, в которой сервисы верхнего глобального уровня смонтированы на уже существующих низкоуровневых локальных сервисах ядра. Инструментарий является модульным и приложение может использовать функции Globus без библиотеки обменов. Инструментарий Globus сос­тоит из следующих функций (точный набор зависит от версии):



Скачать документ

Похожие документы:

  1. 1 Паралельні та розподілені обчислення

    Документ
    ... системита мережі ОКР «спеціаліст» ОНУ 2012 1.Паралельні тарозподілені обчислення ... Механізм синхронізації паралельних процесів, семафор ... MPI. Модель MPI-програми. Розподілені операції технології MPI. ...
  2. Роль і місце бухгалте рського обліку контролю й аналізу в розвитку економічної науки та практики збірник матеріалів міжнародної науково-практичної конфер енції 14 травня 2010 р удк 657 22

    Документ
    ... і, що використовуються для обчислення кількості працюючих та фінансових показників, зг ... і бути чітко визначені тарозподілені обов’язки окремих прац ... складових. Для вітчизняної системи обліку характерне паралельне існування бухгалтерського і податкового ...
  3. П ерелік дисциплін які виносяться для вступу на освітньо-кваліфікаційний рівень магістра зі спеціальності « комп’ютерні системи та мережі»

    Документ
    ... системита мережі» ● Периферійні пристрої ● Системне програмне забезпечення ● Паралельні тарозподілені обчислення ● Основи алгоритмізації та ... програмування ● Комп’ютерні системи ● ...
  4. П ерелік дисциплін які виносяться для вступу на освітньо-кваліфікаційний рівень магістра зі спеціальності « комп’ютерні системи та мережі»

    Документ
    ... системита мережі» ● Периферійні пристрої ● Системне програмне забезпечення ● Паралельні тарозподілені обчислення ● Основи алгоритмізації та ... програмування ● Комп’ютерні системи ● ...
  5. «молода наука-2010» збірник матеріалів університетської науково-практичної конференції студентів та молодих учених

    Документ
    ... собою загальну характеристику системи формування, розподіленнята використання кадрів [1]. ... Уточнень потребує чинна методика обчислення показників рентабельності сільськогосподарського ... програмами, щоквартально, тапаралельно публікувати рейтинг ...

Другие похожие документы..