Помощь в написании студенческих работ
Антистрессовый сервис

Исследование кластерных вычислительных систем и разработка моделей назначения фрагментов параллельных программ

ДиссертацияПомощь в написанииУзнать стоимостьмоей работы

В работе был проведен анализ существующих методов и алгоритмов назначения фрагментов ПП на КВС, описаны их положительные и отрицательные стороны. Недостаток существующих методов заключается в том, что данные методы не учитывают иерархическую структуру организации КС и памяти, а так же накладные расходы, возникающие при выполнении ПП на современных КВС. В существующих методах предлагаются… Читать ещё >

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

Содержание

  • Сокращения
  • Аннотация работы
  • Глава 1. Анализ кластерных вычислительных систем и методов распределения задач
  • Классификация параллельных компьютеров и систем
    • 1. 1. 2. Обзор современных суперкомпьютерных систем СНГ
    • 1. 2. Особенности организация кластерных вычислительных систем
    • 1. 3. Классификация кластерных вычислительных систем
    • 1. 4. Структуры кластеров, построенных на разных аппаратных платформах на примере кластеров МЭИ И ХТУ
    • 1. 5. Принципы организации памяти кластерной вычислительной системы на примере кластера МЭИ И ХТУ
    • 1. 6. Коммутационные среды кластерной вычислительной системы
    • 1. 7. Анализ современных методов распределения задач
    • 1. 7. 1. Режимы функционирования кластерных вычислительных систем
    • 1. 7. 2. Управление ресурсами в распределенных вычислительных системах
    • 1. 7. 3. Планировщики кластерных вычислительных систем
    • 1. 8. Модели и алгоритмы назначения задач на КВС
    • 1. 8. 1. Понятие назначения задач на КВС
    • 1. 8. 2. Обзор моделей распределения ресурсов и алгоритмов назначения
    • 1. 9. Постановка задачи решаемой в диссертации
    • 1. 9. 1. Формальное описание модели кластерной вычислительной системы
    • 1. 9. 2. Формализованное описание класса задач
    • 1. 9. 3. Задача эффективного назначения фрагментов параллельных программ на вычислители КВС
    • 1. 9. 4. Постановка задачи

В настоящее время понятия «Многопроцессорные вычислительные системы» и «Многомашинные вычислительные системы» (МВС)[1] широко применяются при рассмотрении вопросов, связанных с параллельными вычислениями. В развитии вычислительной техники многое определяется стремлением повысить производительность существующих систем[1]. Мощность первых компьютеров была очень мала, поэтому решение многих прикладных задач (ПЗ) на них было невозможным или уходило немыслимое количество времени, для их решения. Сразу после появления первых компьютеров, стали придумывать различные методы для объединения нескольких компьютеров в одну единую систему, чтобы повысить производительность и минимизировать время решения задачи. Идея была проста — если мощности одного компьютера не хватает для решения ПЗ, то надо разделить задачу на две или более части и решать каждую часть на своем компьютере. Это и предопределило появление МВС, основным представителем которых являются кластерные вычислительные системы (КВС). КВС — это совокупность вычислительных узлов (ВУ), объединенных в рамках некоторой коммуникационной среды и нацеленных для решения одной сложной или множества независимых задач[1]. В качестве ВУ для кластеров некоторое время назад использовались доступные на рынке однопроцессорные компьютеры, в настоящее время используются 2-х или 4-х процессорные платформы, которые имеют различные архитектурные решения. В последнее время КВС становятся общедоступными аппаратными платформами для высокопроизводительных вычислений, обладающими неплохим соотношением стоимости и производительности.

Тем не менее, эффективное применение КВС на практике оказалось не такой простой задачей. Выяснилось, что реализации «больших задач"[1] на КВС сопутствует множество проблем, связанных со спецификой программирования, использованием вычислительных ресурсов системы, представлением результатов в нужной форме и т. д. Основной проблемой, с которой столкнулись абсолютно все пользователи таких систем, стало то, как добиться эффективного решения задач на КВС.

Для того чтобы выполнить прикладную задачу на КВС, пользователь, как правило, должен разработать параллельную программу (ПП), в том числе с учетом зернистости параллелизма в программе, при этом учитывать такие характеристики КВС, как количество узлов, процессоров, ядер (вычислителей), и статически назначить фрагменты ПП на вычислители КВС так, чтобы достичь желаемого эффекта[2]. При этом пользователь ожидает ускорение её решения пропорционально числу задействованных вычислителей. Однако чаще всего эти ожидания оказываются не оправданными, особенно это относится к кластерным вычислительным системам. Одной из причин такого положения является то, что КВС относятся к уникальным системам обработки данных как по организации памяти, сопряжению аппаратных средств и коммуникационного оборудования, так и настройки программного обеспечения и, следовательно, со своими особенностями реализации параллельных вычислений, которые чаще всего не учитываются пользователями при подготовке прикладной задачи к выполнению.

В работе приводится подход, основанный на предварительном исследовании конкретных КВС (кластер МЭИ (ТУ) и кластер Ханойского Технологического Университета (ХТУ)) с целью получения значений их характеристик, которые дополнительно необходимо учитывать при решении задачи назначения фрагментов программы на вычислители КВС так, чтобы минимизировать время её выполнения.

Таким образом, решаемая задача в диссертации — исследование влияния характеристик современных КВС и варианта назначения фрагментов параллельной программы (Ф1111) на вычислители КВС на время выполнения ПП с последующим учетом этого влияния при минимизации времени решения и, следовательно, повышении эффективности применения КВС. Само время выполнения задач в сильной степени определяется механизмом назначения 8 фрагментов программы на вычислители KB С. Под назначением понимается процесс распределения ФПП (сегмент задачи) по вычислителям КВС, определяющее на каком вычислителе будет выполняться тот или иной фрагмент ПП. Обычно при выполнении 1111 на КВС выделяется определенное количество свободных ресурсов (вычислителей, емкость памяти и т. д.) на момент запроса обработки, поэтому вычислители могут находиться в разных местах КВС (в одном или разных процессорах, в одном или разных ВУ), связанных коммутационными сетями разных уровней и иметь различную свободную емкость памяти. Поэтому время передачи данных между вычислителями, а так же время обращения к памяти в зависимости от свободной емкости памяти на разных уровнях могут различаться, из-за этого время выполнения ПП на одном и том же количестве вычислителей может различаться в зависимости от того, какие именно вычислители используются. Поэтому при неудачном назначении, время выполнения задачи намного возрастает за счет появления накладных расходов. Под накладными расходами в работе понимаются те временные затраты, которые определяются факторами замедляющими время выполнения задачи. Следовательно, это непроизводительное время, связанное с обменом блоками данных между оперативной и дисковой памятью, время на разрешение конфликтов, которые возникают при учете приоритетов на обращения к памяти, передачи данных между КС с более низкой пропускной способности, латентность коммутационной сети (КС) при загруженном состоянии.

Актуальность работы. Существующие методы [3,4] решения задачи назначения ФПП на вычислители КВС комплексно не учитывают вышеперечисленные факторы. В ряде работ предлагаются эвристические алгоритмы, учитывающие только номинальную производительность вычислителей, а иногда и время передачи данных по коммутационным сетям разных уровней. В настоящей работе предлагается в качестве дополнительных характеристик в процессе статического назначения ФПП учитывать приведенные выше факторы, представленные коэффициентами накладных расходов, что позволит повысить эффективность выполнения параллельных программ (ПП) на КВС. Поэтому разработка методики назначения ФПП на вычислители КВС, обеспечивающей учет таких важных характеристик конкретных КВС, как состояние памяти вычислительного узла в момент обработки задачи и неоднородность коммуникационной среды, выраженных в виде коэффициентов накладных расходов, является актуальной задачей.

Цель работы и задачи исследования.

Цель диссертационной работы заключается в исследовании КВС для получения численных значений коэффициентов накладных расходов, разработка математической модели и методики статического назначения ФПП, учитывающих как характеристики задач, КВС, так и значения данных коэффициентов. Основная задача исследования — определить степень влияния характеристик конкретной КВС и механизмов организации параллельных вычислений на время решения прикладных задач заданного класса.

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

— архитектура ВС;

— вид организации памяти ВС;

— тип коммутационной сети;

— способ организации параллельных вычислений;

— качество параллельной программы, которое существенно зависит от языка программирования, метода решения и распараллеливания задачи, степени распараллеливания (зернистости).

Объектом исследования в работе являются кластерные вычислительные системы на примере кластеров МЭИ и Ханойского Технологического Университета (ХТУ), предметом исследования — особенности организации памяти и КС КВС, учет которых позволит сократить время выполнения параллельных программ на КВС за счет эффективного назначения ФПП на выделенные вычислительные ресурсы.

Научная новизна результатов, полученных в диссертации.

1. Определенны особенности иерархически-неоднородной организации памяти и коммуникационной среды КВС, а также виды накладных расходов, возникающих на разных уровнях иерархии, влияющих на время выполнения параллельных программ.

2. Разработана математическая модель задачи оптимизации обобщенного вида, выраженная в аналитической форме, которая отражает зависимость времени выполнения 1111 от варианта назначения ФПП на выделенные вычислители КВС.

3. Проведена адаптация генетического алгоритма для задачи эффективного назначения ФПП на вычислители КВС, построена имитационная модель процесса выполнения 1111 на КВС и разработана методика статического назначения ФПП на выделенные вычислители КВС.

Основные задачи диссертации. В диссертации ставятся и решаются следующие задачи.

1. Анализ современных КВС с точки зрения оценки влияния особенностей иерархически-неоднородной организации памяти и КС КВС на время выполнения прикладных задач, а также анализ различных методов и моделей распределения фрагментов параллельных программ по узлам КВС.

2. Разработка математической модели оптимизации назначения ФПП на выделенные ресурсы КВС с учетом характеристик КВС, задач и накладных расходов, возникающих при параллельных вычислениях.

3. Проведение тестирования указанных выше реальных КВС с целью получения экспериментальных данных, представленных в виде коэффициентов накладных расходов.

4. Разработка имитационной модели процесса выполнения задач на КВС и алгоритма статического назначения ФПП на вычислители КВС, основанного на аппарате теории генетических алгоритмов, учитывающего особенности.

11 организация памяти и КС, для КВС МЭИ и ХТУ.

5. Оценка эффективности предложенной методики статического назначения ФПП по вычислителям КВС на примере выполнения заданных прикладных задач.

Практическая значимость работы заключается в создании программных средств, реализующих предложенную автором методику, которые могут быть использованы при разработке параллельных программ и планировании их выполнения на выделенных ресурсах КВС для повышения эффективности использования конкретных систем. Получены реальные значения времени обращения к памяти на разных уровнях ее иерархии и пропускной способности КС КВС МЭИ и ХТУ. Определены особенности конфликтов, возникающих при одновременном обращении к памяти на разных уровнях КС, которые приводят к увеличению времени решения задачи.

Достоверность результатов работы подтверждена экспериментальным исследованием решения различных задач на кластерах МЭИ, МГУ и ХТУ.

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

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

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

Реализация результатов работы.

Результаты диссертационной работы Во Минь Тунга применяются в учебном процессе на кафедре ВМСиС МЭИ (ТУ) при проведении лекционных и лабораторных занятий по курсу «Вычислительные системы».

Результаты диссертационной работы Во Минь Тунга применяются в учебном процессе в Ханойском Технологическом Университете при проведении лекционных и лабораторных занятий по курсу «Вычислительные системы».

Результаты диссертационной работы Во Минь Тунга применяются в учебном процессе в Институте Информационных Технологий при ВАНТ (Вьетнамском Академии Наук и Технологий) при проведении лекционных и лабораторных занятий по курсу «Вычислительные системы».

Публикации. Всего по теме диссертации было опубликовано три печатные работы.

Во Минь Тунг. Исследование методов распределения данных по процессорам кластерной системы для заданного класса прикладных задач // Труды междун. науч.-техн. конф. «Информационные средства и технологии».2008 г. С. 118—123.

Во Минь Тунг. Генетические алгоритмы в задаче о назначении // «Шестнадцатая международная научно-техническая конференция студентов и аспирантов» .2010 г. С. 401 -402.

Во Минь Тунг. Оценка характеристик кластерных вычислительных систем // Вестник МЭИ. — М.: Издательский дом МЭИ, 2010. — № 2. — С. 133−140.

Основные выводы и результаты.

1. Приведены критерии для анализа эффективности разработанного ГА назначения ФПП на вычислители КВС, так же проведен анализ для сравнения разработанного алгоритма назначения с полным перебором на модельных задачах.

2. Разработаны ПП для оценки эффективности выполнения ГА назначения в частности параллельная MPI программа расчета освещенности виртуальных экранов (ЗЕ)-рефрактограмм) и визуализации освещенности экрана в интерференционной схеме для модели сферически неоднородной среды.

3. Проведены экспериментальные исследования эффективности выполнения параллельных программ при использовании ГА назначения ФПП по сравнению с принципом назначения в планировщике или в существующих эвристических методах назначения указным в данной главе. По данным результатам было получено положительный результат характеризующий повышение эффективности выполнения ПП от 6−12%.

4. Разработана методика назначения ФПП на вычислители КВС с иерархической организацией КС и памяти. В основу методики легла разработанная автором оптимизационная модель задачи назначения с помощью ГА.

Заключение

.

Перечислим основные результаты, полученные в работе:

1. Проведен анализ и рассмотрены принципы построения современных КВС на разных аппаратных платформах, выявлено, что КВС являются мультиархитектурными, так как на разных уровнях детализации КВС применяются различные способы их организации. Написаны тестовые программы для исследования особенности иерархической организация КС и памяти КВС. Экспериментально получены следующие результаты: а) реальное время обращения к памяти на разных уровнях иерархии для КВС МЭИ и ХТУ. Полученный результат показал, на сколько может повыситься время выполнения ПП при обращения за данными находящимися в памяти высокого уровняб) реальное время передачи данных на разных уровнях иерархии КС для КВС МЭИ, ХТУ. Реальная скорость обмена оказалось, намного меньше, чем заявленная производителем, связано это с латентностью и временем, затрачиваемым на организацию функций обменав) определены накладные расходы, возникающие в процессе обращения к памяти и при передаче данных на разных уровнях иерархии для КВС МЭИ и ХТУ. Полученный результат показал что эффективность выполнения ПП может существенно снизиться от 5% до десятков %.

Из проведенных экспериментов и исследования выявлены особенности иерархической — неоднородной организации КС и памяти, а также накладные расходы возникающие в процессе выполнения ПП, учет которых существенно влияет на общее время выполнения 1111.

2. Определено что с помощью поиска варианта эффективного назначения ФПП на КВС, возможно минимизировать время выполнения за счет минимизации накладных расходов и учёта особенности организации иерархической структуры КС и памяти.

В работе был предложен механизм преобразования графа ПА при учете накладных расходов и разных уровней иерархии КС и памяти, который наглядно демонстрирует, как изменится время выполнения ПП при учете данных факторов.

3. В работе был проведен анализ существующих методов и алгоритмов назначения фрагментов ПП на КВС, описаны их положительные и отрицательные стороны. Недостаток существующих методов заключается в том, что данные методы не учитывают иерархическую структуру организации КС и памяти, а так же накладные расходы, возникающие при выполнении ПП на современных КВС. В существующих методах предлагаются эвристические алгоритмы, учитывающие только номинальную производительность вычислителей, а иногда и время передачи данных по коммутационным сетям разных уровней. Такой подход не всегда позволяет получить минимальное время выполнения ПП, так как комплексно не учитывается вышеперечисленные факторы, которые влияют на время выполнения ПП. На основания проведенных исследований в диссертации были предложены следующие варианты решения: а) поярусная модель оптимизации, основанная на разработанной в диссертации аналитической зависимости времени выполнения задачи от вариантов назначения ФПП, учитывающая особенности иерархической организации памяти, КС и накладных расходов. Представленная поярусная модель оптимизации имеет следующие недостатки — узкий диапазон решаемых задач, а так же сложность в реализации. б) определено что для более точного учета всех перечисленных факторов необходимо перейти к разработке имитационной модели, моделирующий процесс выполнения ПП на разных КВС учитывающие иерархические организация КС и памяти, а также накладные расходы на разных уровнях иерархии для современных КВС.

4. Разработан алгоритм назначения ФПП на вычислители КВС основанный на эволюционных алгоритмов[24].

5. Написана параллельная MPI программа расчета освещенности виртуальных экранов (ЗО-рефрактограмм) и визуализации освещенности экрана в интерференционной схеме для модели сферически неоднородной среды.

6. На основе оптимизационной модели задачи назначения разработанной имитационной модели и ГА назначения, который реализован в программный продукт. Использования данной программы позволяет автоматизировать процесс выбора эффективного варианта назначения для заданных исследуемых классов задач. Применения предложенной оптимизационной модели задачи назначения позволило решить задачу назначения для множества задач, такие как, перемножения матриц, решения задачи надежности [3], расчета изображения светового излучения в трехмерном пространстве для оптически сферической неоднородной среды.

7. Предложенный ГА назначение имеет достаточно простое программное реализация. Затраты времени на поиск варианта эффективного назначения на порядки меньше чем при полном переборе. а) рассчитан доверительный интервал для разработанного ГА поиска варианта эффективного назначения, который показал узкий диапазон сходимости результатов для выбранных тип задач. Так же было доказана адекватность разработанной модели на примере перемножения матриц. б) отметим, что разработанный ГА назначения может быть использован для улучшения разработанных алгоритмов назначения. Так же разработанная имитационная модель выполнения ПП на КВС может быть использована для других алгоритмов назначения.

8. Приведены критерии для анализа эффективности разработанного ГА назначения по сравнению с другими алгоритмами или полным переборам.

9. Проведены экспериментальные исследования эффективности разработанного ГА назначения на КВС МЭИ, МГУ, ХТУ. Полученный результат продемонстрировал повышение эффективности выполнения ПП на 612% по сравнению с алгоритмом назначения, заложенным в планировщике КВС, или другими эвристическими методами.

Разработанная программная реализация оптимизационной модели поиска варианта назначение имеет возможность для внедрения в планировщики на КВС.

10. На основания проведенных в диссертации исследований и разработанного алгоритма назначения, была разработана методика назначения ФПП на вычислители КВС.

Показать весь текст

Список литературы

  1. В.В., Воеводин Вл. В. Параллельные вычисления. — Спб.: БХВ-Петербург, 2002. — 608 с.
  2. В. П. Интеллектуальное управление процессами и загруженностью в вычислительных системах/Изв. РАН ТиСУ 2007.№ 5
  3. Яньков Сергей Георгиевич. Исследование и разработка методики отображения задач на кластерные системы с иерархически-неоднородной коммуникационной средой диссертация 2009.-168с
  4. Тиц П. Г. Организация параллельных вычислений на многомашинных (многопроцессорных) вычислительных системах — диссертация 1975.-142 с.
  5. В. Г. Архитектура вычислительных систем изд. МГТУ имени Н. Э. Баумана, 2008. 520с.
  6. И.И., Калинина Г. А. Лабораторные работы по курсу «Вычислительные системы» М.: Издательство МЭИ, 1999, — 32 с.
  7. И.И. Курс лекций «Вычислительные системы».8. http://www.supercomputers.ru
  8. Кластеры на многоядерных процессорах / И. И. Ладыгин, А. В. Логинов, А. В. Филатов, С. Г. Яньков. М.: Издательский дом МЭИ, 2008. -112 с. 10. www.wikipedia.org
  9. Сервер информационных технологий www.citforum.ru
  10. The Infiniband Trade Association official website http://www.infinibandta.org.
  11. HyperTransport Consortium official website http://www.hypertransport.org14. www.intel.com
  12. AMD Russia. Официальный сайт AMD. http://www.amd.com/ru-ru16. www.osp.ru
  13. М.Г. Модели и алгоритмы вложения параллельных программ в распределенные вычислительные системы. диссертация 2008.
  14. В.В. Модели распределенных вычислений. — М.: ФИЗМАТ ЛИТ, 2004. — 320 с.
  15. Рахман Павел Азизурович. Разработка методики повышения эффективности использования вычислительных ресурсов при применении технологии виртуальных машин: Дис.. канд. техн. наук: 05.13.13: Москва, 2005 400 с
  16. С.А., Стесик O.JI. Параллельное программирование для многопроцессорных вычислительных систем. СПб.: БХВ — Петербург, 2002.-400 с. 21. «Вычислительная математика и структура алгоритмов.».-М.: Изд-во МГУ, 2006.-112 с.
  17. Информационный аналитический цент по параллельным вычислениям www. parallel, ru
  18. Введение в математическое моделирование: Учеб. Пособие/ Под ред. П. В. Трусова. М.: Университетская книга, Логос, 2007.-440 с.
  19. Эволюционная кибернетика: курс лекции/ Редько В. Г. Интернет адрес: http://www.keldysh.ru/pages/BioCyber/Lectures.html
  20. Цой Ю. Р. Нейроэволюционный алгоритм и программные средства для обработки изображений диссертация, 2007. — 209 с.
  21. Организация параллельных вычислений на многомашинных (многопроцессорных) вычислительных системах: Диссертация кандидата технических наук: В 2-х ч. Ч. 1- 4.2: Приложение / П. Г. Тиц, Моск. энерг. инт (МЭИ). — М., 1975. — 142 с
  22. Во М. Т. Исследование решения прикладных задач на кластерах Магистерская диссертация — М.: — 116 с
  23. С.М. Исследование эффективности решения сильносвязных и среднесвязных задач на кластерных системах. Магистерская диссертация -М.: -266 с. 29. http://www.citforum.ru
  24. Д. А. Введение в теорию вычислительных систем. М., «Советское радио», 1972. 280 с.
  25. А.А. Коммутаторы вычислительных систем: учебное пособие / А. А. Дерюгин. — М.: Издательский дом МЭИ, 2008. — 112 с.
  26. Энциклопедия / Сост. А. А. Грицанов, B.JI. Абушенко, Г. М. Евелькин, Г. Н. Соколова, О. В. Терещенко. Мн.: Книжный Дом, 2003. — 1312 с
  27. Нгуен Ван Тханг. Расчет освещенности экрана астигматическим пучком при распространении его в неоднородной среде диссертация 2009.
  28. А.Б., Две задачи оптимизации использования неоднородных вычислительных систем, «Известие АН СССР», Техническая кибернетика № 4 1971.
  29. В.В. Совместное планирование и назначение процессов как метод оптимизации архитектурных решений вычислительных систем // Автоматика и телемеханика. — 2001. — № 12. — С. 107—116.
  30. Д.В., Кутепов В. П., Осипов М. А. Граф-схемное потоковое параллельное программирование и его реализация на кластерных системах // Известия РАН. Теория и системы управления. — 2005, — № 1. —С. 75—96.
  31. Message Passing Interface Forum www. mpi-forum.org.
  32. В.П. Организация параллельных вычислений на системах.— М.: Издательство МЭИ, 1988.
  33. И.И., Калинина Г. А. Исследование надежности вычислительных систем. — М.: Издательство МЭИ, 1999. — 32 с.
  34. Система пакетной обработки заданий Torque http://www.clusterresources.com/pages/products/torque-resource-manager.php
  35. В.В. Параллельные вычислительные системы. — М.: Нолидж, 1999. — 320 с.
  36. Gigabit Ethernet Technology, www. gigabit-ethernet.org.
  37. В.Г., Олифер Н. А. Компьютерные сети. Принципы, технологии, протоколы. — 2-е изд. — СПб.: Издательский дом «Питер», 2004.
  38. В л.В.Воеводин, С. А. Жуматий. Вычислительное дело и кластерные системы.
  39. В.В.Воеводин, Вл.В.Воеводин. Параллельные вычисления.
  40. Инструкция по эксплуатации вычислительного кластера НРС 11 015 001. — Т-Платформы, 2007.
Заполнить форму текущей работой