430 likes | 625 Vues
Т. Коломейцева, С. Демин, М. Меретяков, Д. Кулагин, А. Суслов , П. Райков, А. Ларченко , А. Дунаев, А. Бухановский. Инструментальная оболочка визуального проектирования приложений в Грид. НИИ НКТ. PEG2 : идеи, концепция, реализация . Оглавление. Введение и современное состояние
E N D
Т. Коломейцева, С. Демин, М. Меретяков, Д. Кулагин, А. Суслов , П. Райков, А. Ларченко , А. Дунаев, А. Бухановский Инструментальная оболочка визуального проектирования приложений в Грид НИИ НКТ PEG2: идеи, концепция, реализация
Оглавление • Введение и современное состояние • Концепция и некоторые проблемы • PEG • PEG 2 • Что дальше? • Авторы и соавторы • Ссылки
Что такое Грид Существует множество определений Грид Грид– согласованная, открытая и стандартизованная среда, которая обеспечивает гибкое, безопасное, скоординированное разделение ресурсов в рамках виртуальной организации Я. Фостер, К. Кессельман « »
Россия — щедрая душа • Простаивающий парк техники • Ресурсы университетов и компаний • Отсутствие развитых графических средств организации удаленных вычислений • Отсутствие обобщенных механизмов предоставления ресурсов и сервисов • Неравномерное распределение вычислительных мощностей по территории
Европейский опыт • Сообщества: Open Grid Forum, Open Science Grid, Globus Alliance, OMII, D-Grid... • Большие проекты: Globus, EGEE, Condor-G, OGSA-DAI... • В основном, удаленный доступ к кластерам • Низкоуровневая посылка задач • Ограниченное использование Workflow (например, Taverna) • Многие просто присоединяются к EGEE • MediaGrid –предоставление контента с помощью Грид
Мы ждем перемен • Удобный запуск приложений • Простое построение процесса вычислений с задействованием ресурсов различных организаций • Предоставление приложений в виде ресурсов (подобно Web-сервисам) • Единое пространство для предоставления и использования ресурсов (правовое, экономическое, технологическое) • Запуск сложных цепочек вычислений
Визуальная среда • Создание и редактирование workflow • Поиск необходимых сервисов • Связывание workflow с сервисами • Прогнозирование времени исполнения workflow при выбранных параметрах • Запуск и мониторинг исполнения • Визуализация результатов счета • Уточнение параметров модели и мн. др.
Workflow Данные 1 Данные 1 Действие 1 Действие 2 Действие 3 Данные 3
Мечты – одно только облако? • Что хотелось бы: • Провайдер сервисов: организация, каталогизация, предоставление • Подлежащая вычислительная Грид-инфраструктура • Workflow как основной и наглядный инструмент запуска процессов • Мониторинг выполнения • Балансировка и прогноз времени исполнения • Web-доступ • Пилотные реализации: PEG, PEG2
Концепция в движении ? Провайдер InFile Сервис Model Calc Сервис OutFile Интернет Сервис
Концепция в движении Провайдер Сервис Сервис Интернет Интернет Сервис
Братья пилоты: PEG 1, 2, 3… • PEG • Задачи • Архитектура и динамика работы • Исследования • Технологии • PEG 2 • Задачи • Архитектура и динамки работы • Исследования • Технологии
PEG • Задачи Что хотели • Пилотный проект • Работа с Грид-инфраструктурой • Параллельный запуск • Условие отсутствия необходимости модификации существующих приложений • Выявление особенностей параллельного запуска на Грид
PEG • Архитектура системы • Один Грид-сервер • Множество целевых систем • Модель запуска «Master-Slave» • Толстый клиент (основная часть работывыполняется на нем) • Полностью ручное написание «обертки» • Частично написание hack’ов
PEG • Динамика системы Целевые системы Входные данные Выходные данные Грид-сервер Клиент Программа exe exe exe exe exe + decomposer composer hack
PEG • Исследования • Исследование методов балансировки • Различные способы запуска: асинхронный, синхронный • Измерение производительности протоколов передачи данных (RandomByteIO) • Исследование каскадных схем балансировки (далее) • Написан симулятор Грид для исследования различных моделей балансировок
PEG • Симулятор • Для чего • Быстрая проверка теоретических изысканий • Особенности • Консольный запуск • Возможность задания стохастики Грид-инфраструктуры • Возможность запуска Workflow • Полная профилировка модельных запусков и сбор статистики
PEG • Симулятор • Моделирование стохастичности загруженности сети • Моделирование варьирования производительности узлов • Событийная модель симуляции • Различные алгоритмы отображения абстрактного workflow на вычислительную сеть • Просмотр картины симуляции • Модульная структура (простота модернизации)
PEG • Технологии • Сервер: Windows / Linux + GPE Server 1.4 на стороне сервера • Клиент: GPE 1.4 TSI • GPE 1.5 Client API • Globus Toolkit 4.0.2 (Java version) • Java 1.5
PEG 2 • Задачи Что хотели • Пилотный проект • Работа с Грид-инфраструктурой • Параллельный и одиночный запуск • Условие отсутствия необходимости модификации существующих приложений • Визуальное редактирование Workflow • Мониторинг исполнения • Балансировка на основе информации о Грид-инфраструктуре
PEG 2: архитектура • Несколько Грид-серверов со множеством целевых систем • Запуск сложных Workflow • Различные виды балансировок • Прогнозирование времени исполнения workflow • Web-интерфейс • Простая адаптация программ • Расширяемость (внешние модули)
PEG 2: прогресс • Практически готово: • Запуск workflow • Мониторинг производительности • Мониторинг исполнения • В процессе: • Визуальная среда • Различные виды балансировки • Web-интерфейс
Исследования • Исследования по балансировке нагрузки • Балансировка и прогнозирование работы нелинейных алгоритмов на архитектуре Master-Slave • Распределенная обработка данных • Повышение эффективности обработки распределенных данных в Грид • Мониторинг сети и вычислительных узлов
Исследования • Исследования по балансировке нагрузки • Балансировка и прогнозирование работы нелинейных алгоритмов на архитектуре Master-Slave • Распределенная обработка данных • Повышение эффективности обработки распределенных данных в Грид • Мониторинг сети и вычислительных узлов
Абстрактная вычислительная модель Маршрутизатор Узел с данными w1 w2 w3 w4 w5 1 2 3 4 5 c1 c2 c3 c4 c5 Вычислительные узлы • wi – пропускная способность канала между узлом с данными и вычислителем • cj – производительность вычислителя • разделяется один half-duplex канал
Модельные параллельные алгоритмы N данныхвхода Объемы передаваемы и возвращаемых данных Раздача Заданий n1 n4 n3 n2 Разделение данных между узлами Обработка Обработка Обработка Обработка Сбор Результатов m1 m3 m2 m4 M данных выхода
Возможные схемы Диаграмма Ганта • Проблемы: • Поиск наилучшей схемы • Классификация схем
Каскадные схемы - Функция вида Диаграмма Ганта Решение при помощи метода наименьших квадратов
Тезисы и результаты Результаты: • Получен общий вид каскадных схем • Построен алгоритм выбора лучшей каскадной схемы за Проблемы: • Метод выбора схемы, относительно которой считать ускорение • Выявлена проблема объединения выходных данных в случае нелинейных алгоритмов • Не решена проблема оценки существования решения для заданной каскадной схемы
Исследования • Исследования по балансировке нагрузки • Балансировка и прогнозирование работы нелинейных алгоритмов на архитектуре Master-Slave • Распределенная обработка данных • Повышение эффективности обработки распределенных данных в Грид • Мониторинг сети и вычислительных узлов
Задача: Обработать неоднородно распределенные по вычислительным узлам данные Собрать результаты на заданном узле Минимизировать время работы Характерные особенности: Производительность вычислительных узлов различна Пропускная способность каналов между узлами существенно варьируются Задача эффективной обработки распределенных данных в Грид и пути ее решения • Пути решения: • Статическая и динамическая перебалансировка загрузки вычислительных узлов за счет перераспределения данных с учетом пропускной способности межузловых каналов
Исследования • Исследования по балансировке нагрузки • Балансировка и прогнозирование работы нелинейных алгоритмов на архитектуре Master-Slave • Распределенная обработка данных • Повышение эффективности обработки распределенных данных в Грид • Мониторинг сети и вычислительных узлов
Условия: Распределенная система компьютеров, на каждом из которых хранится произвольный объем текстовых данных Прикладная задача: за минимальное время найти n максимально похожих на образец текстов в коллекции документов, распределенной по сети Задача поиска тематически подобных текстов
Проведение исследования Ожидаемые результаты исследования: • Описание влияния особенностей параллельной Грид-реализации алгоритмов поиска текстов на эффективность • Методики повышения эффективности работы этих алгоритмов • Описание области применимости выработанных методик Стадии исследования: • Реализация алгоритма Некрестьянова поиска тематически подобных текстов по образцу для Грид-архитектуры • Исследование особенностей Грид-реализации и выявление методов повышения эффективности алгоритма: • за счет применения методов балансировки • за счет учета специфики текстовых данных • за счет учета специфики выбранного алгоритма
Исследования • Исследования по балансировке нагрузки • Балансировка и прогнозирование работы нелинейных алгоритмов на архитектуре Master-Slave • Распределенная обработка данных • Повышение эффективности обработки распределенных данных в Грид • Мониторинг сети и вычислительных узлов
Мониторинг: для чего он? Системы мониторинга позволяют: • Получать характеристики удаленной системы • Производить поиск неисправностей • Производить поиск и анализ ресурсов • Повышать эффективность управления системой • Упрощать процесс составления расписаний • Вести учет и статистику работы системы
Мониторинг: особенности Особенности собираемой информации • информация о производительности имеет определенное время, в течение которого она считается полезной • частые обновления: информация о производительности обновляется гораздо чаще, чем запрашивается из места ее хранения • информация о производительности имеет стохастический характер: кроме самой информации о производительности иногда требуются такие ее характеристики как: распределение, время жизни, и т.д.
Мониторинг: предъявляемые требования • Высокая скорость передачи данных • Малое время сбора данных • Безопасность • Масштабируемость • Расширяемость функциональных возможностей • Способность взаимодействовать с Грид-сервисами • Предварительная обработка собираемых данных • Встраиваемость в Globus Toolkit • Графический или Web-интерфейс
Мониторинг: цели исследования • Исследовать существующие реализации мониторинговых систем на предмет соответствия предъявляемым требованиям. Выбрать из них наиболее походящую для встраивания в PEG 2 • Исследовать существующие методики и программные средства позволяющие оценить производительность вычислительного узла для конкретной задачи или для узкого класса задач. Встроить в PEG 2 наиболее удачную реализацию
PEG 2: Технологии • Сервер: *nix (рекомендованы RadHat, SuSe) + GPE Server 1.5 • Клиент: SSH Client (вместо TSI) • GPE 1.5 Client API • Globus Toolkit 4.0.2 (Java version) • Apache Common Logging • Java 1.5
Работа продолжается В дальнейшем планируется: • Завершение работ по визуальному редактору • Создание Web-интерфейса • Дальнейшие исследования по эффективному исполнению приложений • Повышение удобства работы
Авторы и соавторы • Главные разработчики • Дунаев Антон • Ларченко Алексей • Стажеры • Коломейцева Татьяна • Райков Павел • Меретяков Михаил • Суслов Алексей • Демин Дмитрий (сука) • Художественный руководитель • Бухановский Александр Валерьевич