Высокопроизводительные парал. вычисления на кластерных системах. Воеводин (2005) (1186026), страница 34
Текст из файла (страница 34)
Так, например, для реализации операции матричного умножения ленточным методом, необходимо наличие всего двух конструктивных элементов: локальной операции скалярного умножения векторов иоперации передачи данных следующему процессору в структуре сети.В данный момент можно говорить о расширяемости кластернойкомпоненты системы ПараЛаб. Для того, чтобы обеспечить возможность работы системы с новым алгоритмом, необходимо поместитьсоответствующую программу на кластер.
Далее запустить эту программу из системы посредством удаленного доступа к кластеру. Такимобразом, можно получить представление о динамике решения задачи спомощью данного алгоритма и проанализировать результаты вычислительных экспериментов при помощи компоненты накопления результатов.Очевидно, что разработка параллельных программ практическогоуровня сложности представляет собою многоэтапный технологическийпроцесс и не может быть продемонстрирована во всей своей полнотена таких задачах.
Говоря о технологии программирования, мы подразумеваем все этапы разработки параллельной программы, начиная санализа задачи, выбора модели программы, декомпозиции задачи на167параллельные процессы и заканчивая вопросами анализа производительности и организации вычислительного эксперимента.
Однако неследует забывать, что без освоения основ параллельного программирования, без глубокого понимания процессов, протекающих при параллельном решении задачи на многопроцессорной вычислительной системе самых простых задач, невозможно приступить к разработке сложных параллельных программных комплексов.Литература1.
Hockney R.W., Jesshope C.R. (1988). Parallel Computers 2. Architecture,Programming and Algorithms. - Adam Hilger, Bristol and Philadelphia. (русский перевод 1 издания: Хокни Р., Джессхоуп К. Параллельные ЭВМ. Архитектура, программирование и алгоритмы. - М.: Радио и связь, 1986).2. Kumar V., Grama A., Gupta A., Karypis G. Introduction to ParallelComputing. – The Benjamin/Cummings Publishing Company, Inc., 1994.3.
Quinn M.J. (2004). Parallel Programming in C with MPI and OpenMP. –New York, NY: McGraw-Hill.4. Гергель В.П., Стронгин Р.Г. Основы параллельных вычислений длямногопроцессорных вычислительных машин: Учеб. пособие – Н. Новгород: Изд-во ННГУ, 2000.МОНИТОРИНГ МУЛЬТИПЛАТФОРМЕННЫХ УЗЛОВКЛАСТЕРАИ.В. ЛопатинНижегородский государственный университет им. Н.ЛобачевскогоВ связи с планируемым расширением кластера Нижегородскогогосударственного Университета за счет узлов, работающих под управлением ОС Linux, возникла задача расширения текущей системыуправления кластером. В настоящий момент программный комплекс«Метакластер» ориентирован на работу в среде с узлами на которыхзапущена ОС cемейства Windows (Windows 2000 и выше).Одной из проблем, которые возникают при расширении системыуправления кластером, является задача мониторинга узлов. В текущемварианте программы используется удаленный контроль за состояниемкомпьютеров с использованием стандартных средств, интегрированных в ОС семейства Windows NT.
Windows Management Interface(WMI, интерфейс управления Windows) реализует поддержку мониторинга без необходимости установки дополнительного программного168обеспечения на узлах кластера.В большинстве вариантов ОС Linux, представленных на рынке, отсутствует соответствующая реализация WBEM, что препятствует разработке удаленной системы мониторинга аналогично Windows-версии .В результате был разработан прототип агента, который расположен наузле и запускается в виде демона (или сервиса в терминологииWindows). Агент ожидает поступления удаленного запроса, после чегоформирует информацию о текущем состоянии узла и передает ее удаленной стороне.
Возможно протоколирование поступающих запросови передаваемой информации для отладочных целей и сбора статистики. Со стороны центрального узла, который запрашивает информацию,необходимо реализовать механизм прозрачности мониторинга – тоесть, обработка должна происходить единым образом как дляWindows, так и для Linux-систем. Вместе с тем, в структуре данныхдля хранения информации об узлах кластера необходимо ввести специальную метку для каждого компьютера, показывающую запущенную на нем в данный момент ОС (это необходимо для корректной работы планировщика заданий и остальных компонент системы управления).Одним из интересных направлений в исследовании проблемы мониторинга и управления многоплатформенными кластерами являетсяприменение открытой реализации WBEM OpenWBEM [1], созданнойдля управления компьютерами на множестве платформ, включая различные версии Linux, Sun Solaris и Mac OS.
К недостаткам примененияOpenWBEM можно отнести то, что она не является встроенной в ОС,как в случае WMI на Windows, таким образом, OpenWBEM придетсяустанавливать и конфигурировать на каждом узле кластера. ТакжеOpenWBEM и WMI несовместимы по интерфейсам, что заставляет писать отдельные реализации обработчика информации на центральномузле для Windows и Linux.Другим вариантом решения задачи мониторинга может стать использование открытых реализаций WBEM на языке Java, что обеспечивает кроссплатформенность и единый интерфейс как на клиентскойтак и на серверной стороне.
Примерами таких систем могут служитьSNIA CIMOM и WBEM Services [2], разрабатываемые как проекты соткрытым исходным кодом.Литература1. http://www.openwbem.org OpenWBEM project home page.2. http://wbemservices.sourceforge.net/ WBEM Services project.169ОПЫТ ИСПОЛЬЗОВАНИЯ КЛАСТЕРА ВЦ РАНВ ОБРАЗОВАТЕЛЬНЫХ ЦЕЛЯХ5Г.М. Михайлов, Н.Н. Оленев, А.А. Петров, Ю.П. Рогов,А.М.
ЧернецовВычислительный центр им. А.А. ДородницынаРоссийской академии наук (ВЦ РАН), МоскваС момента ввода в эксплуатацию в 2003 году вычислительныйкластер Вычислительного центра имени А.А. Дородницына Российской академии наук (ВЦ РАН) [1] используется не только для проведения научных расчетов, но и в образовательных целях [2]. Кластер ВЦРАН (http://www.ccas.ru/acluster/main.htm) с суммарной оперативнойпамятью в 32 GB и с суммарной памятью на жестком накопителе в288 GB содержит восемь вычислительных узлов, связанных вычислительной сетью Myrinet 2000 (http://www.myri.com) и управляющей сетью Ethernet 100Base-T.
Вычислительные узлы кластера содержат подва процессора Intel Xeon DP 2600 MHz, 512 Kb cache. Управляющийузел кластера имеет процессор Intel Pentium 4 2260 MHz, 512 Kb cache,533 MHz. На кластере установлена операционная система Linux RedHat9, различные библиотеки взаимодействий API GM-2; MPICH-GMv.1.2.5-10, библиотеки высокого уровня ATLAS 3.6.0, Intel MKL 7.2.1 ипараллельная библиотека ScaLapack. На кластере используется пакетная система очередей OpenPBS (http://www.openpbs.org), входящая всостав проекта OSCAR v 3.0 (http://sourceforge.net/projects/oscar/).
Дляработы студентов в системе очередей выделена специальная очередьshortest (время выполнения до 1 часа), при этом реализована политикавыполнения в первую очередь задач с наименьшим временем выполнения.Основываясь на характеристиках имеющегося в ВЦ РАН вычислительного кластера, был специально разработан годовой курс обучения«Параллельное программирование в интерфейсе MPI», который излагается студентам 5 курса Московского физико-технического института(государственного университета), обучающимся на базовой кафедре«Математическое моделирование сложных процессов и систем» в ВЦРАН. Курс рассчитан на начинающего пользователя Message Passing5Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (код проекта 04-07-90346).170Interface – интерфейса передачи сообщений MPI – студента или специалиста, не знакомого с методами программирования для параллельных ЭВМ, однако владеющего последовательным программированиемна языке программирования С в среде Windows или Linux.
В настоящеевремя в локальной сети ВЦ РАН помещен рабочий вариант полнойэлектронной версии курса, который непрерывно совершенствуется.Некоторые из работ появляются в открытом доступе [2].С одной стороны, данный курс MPI следует международным образцам достаточно полного изложения MPI, которые даны в западныхучебных курсах, например, в курсе Cornell Theory Center (CTC) [3].
Сдругой стороны, данный курс MPI специально предназначен для специалистов в математическом моделировании сложных процессов исистем. Поэтому к стандартным упражнениям апробированных учебных курсов здесь добавлены упражнения, связанные с применениемпараллельных вычислений в математическом моделировании. Курссостоит из двух частей: первая часть предназначена для начинающихиспользовать MPI и содержит восемь лабораторных работ по темам:основы программирования в MPI, попарный и коллективный обменсообщениями, управление группами и коммуникаторами, производныетипы данных и устойчивые запросы связи в MPI, - а вторая часть предназначена для совершенствующихся в его использовании и содержитшесть лабораторных работ: виртуальная топология и топология графа,параллельные математические библиотеки, определяемые пользователем операции приведения, зондирование сообщений и тесты исполнения, – и индивидуальную курсовую работу по решению практическойпроблемы.
В основе первой части лежит курс MPI от CTC, эволюционно совершенствующийся на основе работ ВЦ РАН по мере полученияновых результатов в области параллельных вычислений. Например, впервой лабораторной работе (см. [4]) домашнее задание включает составление параллельной версии программы идентификации параметров блока «Производство» в модели экономики России переходногопериода (см. [5]).Изложение курса MPI в виде цикла лабораторных работ идеальноподходит для студентов, обучающихся по системе Физтеха, в которойсвободное посещение занятий сочетается с обязательным выполнениемзаданий для самостоятельной работы и сдачей заданий к назначенномусроку. Кроме того, электронная версия курса может быть использованав системе открытого дистанционного образования.