Магистр ДонНТУ Бибиков Илья Владимирович

Бибиков Илья Владимирович

Факультет компьютерных наук и технологий

Кафедра компьютерной инженерии

Специальность Инженерия программного обеспечения

Оценка производительности распределенных систем

Научный руководитель: д.т.н., проф. Фельдман Л.П.

Оценка производительности распределенных систем

Содержание

Введение

Современный мир не стоит на месте. И в процессе новых исследований появляются все новые и новые задачи. В последнее время все больший вес в информационных технологиях набирают задачи с большими объемами данных. А большие объемы данных требуют применение мощных вычислительных систем (ВС).

Одним из примеров вычислительных систем с распределенной обработкой являются кластеры [1]. Кластерные вычислительные системы по критерию совместного использования дискового пространства классифицируются следующим образом: с совместным использованием дискового пространства и без предоставления доступа к ресурсам [2].

Дискретные модели Маркова точно отражают работу вычислительной среды и позволяют эффективно распараллелить вычислительные структуры. Непрерывные модели, в сравнении с дискретными — являются менее трудоемкими и применяются для сложного класса исследуемых структур [3].

Анализ кластерных систем при большом количестве решаемых задач с помощью дискретной модели на ВС требует больших временных затрат. Это связано с тем, что количество состояний дискретной Марковской модели комбинаторно возрастает при увеличении количества задач.

1. Актуальность темы

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

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

При объединении большого количества компьютеров в единый вычислительный комплекс порождаются следующие задачи:

Одним из классов вычислительных систем является концепция MIMD (Multiple Instruction stream, Multiple Data stream) — множественный поток команд, множественный поток данных. Преимуществом кластерных систем, как одной из разновидностей MIMD, является построение высокопроизводительного вычислительного комплекса заданной конфигурации. И для того, что кластерная система эффективно функционировала требуется соответствие класса решаемых задач и структуры, на которой производят вычисления.

Классификация вычислительных систем

Рисунок 1 — Классификация вычислительных систем

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

2. Цель и задачи исследования

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

Задачи исследования:

Объектом исследования являются кластерные системы различной топологии.

Предметом исследования являются аналитические методы анализа и синтеза высокопроизводительных вычислительных систем.

3. Обзор исследований и разработок

В связи с большим количеством создаваемых параллельных вычислительных систем (ВС), работы в этом направлении требуют дальнейшего развития, не утрачивают своей актуальности.

Примером тому может служить работы следующих авторов: Забродина А.В., Левина В.К. В своем исследовании они изложили особенности архитектуры и системных решений в многопроцессорных вычислительных системах.

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

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

Такой подход позволяет решать сложные вычислительные задачи качественно нового уровня для различных областей применений. Также была достигнута цель эффективного распараллеливания обработки.

Естественным аппаратом для аналитического моделирования информационно–вычислительной сети (ИВС) служит теория систем и сетей массового обслуживания (СМО), или, как говорят в англоязычных странах, теория очередей.

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

Аналитическая модель представляет ИВС как сеть массового обслуживания, узлами которой служат ресурсы, а заявками — задания (открытая сеть), фиксированное множество заданий (замкнутая сеть). Модель позволяет отобразить взаимодействие между рабочей нагрузкой и ресурсами ИВС и оценить как ожидаемую производительность, так и отношение стоимость\производительность [8].

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

3.1 Классификация кластерных систем

Для построения систем с большим количеством процессоров применяются кластерный или МРР–подходы. Оба эти направления используют SMP как системообразующий вычислительный модуль (ВМ).

Массово–параллельные системы, в отличие от кластеров, имеют более скоростные, как правило, специализированные, каналы связи между вычислительными модулями, а также широкие возможности по масштабированию.

Кластерная система

Рисунок 2 — Кластерная система
(1 — станция управления, С — компьютер, D — накопитель, LAN — Local Area Network, SAN — Storage Area Network)

Рассмотрим упрощенную модель кластера с совместным использованием дискового пространства. Входящие задачи управляющий сервер равномерно распределяет между серверами приложений. Количество серверов приложений — N1. Количество дисков — N2, к которым может обратиться сервер. Количество задач, обрабатываемое вычислительной системой — не более М. Серверы и дисковые накопители — многоканальные устройства.

Задачи — однородные и имеют следующие характеристики:

Структурная схема марковской модели кластера

Рисунок 3 — Структурная схема марковской модели кластера
(анимация: объем — 128 КБ, количество кадров — 14, количество циклов повторения — 7, размер — 680x146)

Первой концепцию кластерной системы разработала компания DEC, как группу объединенных между собой вычислительных машин, представляющих собой единый узел обработки информации. VAX–кластер представляет собой слабосвязанную многомашинную систему с общей внешней памятью, обеспечивающую единый механизм управления и администрирования.

Кластер обладает следующими свойствами [2].

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

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

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

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

Архитектура с общими (разделяемыми) дисками (Shared Disk Architecture) (рисунки 3). Это типичный случай построения кластерной системы. Эта архитектура поддерживает единую базу данных при работе с несколькими компьютерами, объединенными в кластер. В таких системах все узлы разделяют доступ к общим дискам, на которых располагается единая база данных. Производительность таких систем может увеличиваться как путем наращивания числа процессоров и объемов оперативной памяти в каждом узле кластера, так и посредством увеличения количества самих узлов.

Архитектура кластера без разделения ресурсов

Рисунок 4 — Архитектура кластера без разделения ресурсов
(1 — мультиплексер, 2 — контроллер накопителей на дисках, С — компьютерная станция, D — дисковый накопитель)

Архитектура без разделения ресурсов (Shared Nothing Architecture) (рис. 4). Как и в архитектуре с общими дисками, в этой архитектуре поддерживается единый образ базы данных при работе с несколькими компьютерами, работающими под управлением своих копий операционной системы. Однако в этой архитектуре каждый узел системы имеет собственную оперативную память и собственные диски, которые не разделяются между отдельными узлами системы. В таких системах разделяется только общие коммуникационные каналы между узлами системы.

Производительность таких систем может увеличиваться путем добавления процессоров, объемов оперативной и внешней (дисковой) памяти в каждом узле, а также путем наращивания количества таких узлов.

Архитектура кластера с разделением ресурсов

Рисунок 5 — Архитектура кластера с разделением ресурсов
(S — сервер приложений)

3.2 Методы анализа и оценки эффективности

Для оценки качества и оптимизации параллельных вычислительных систем применяются аналитические и имитационные модели и методы экспериментального исследования.

Аналитические методы сегодня широко применяются для оценки эффективности параллельных вычислительных систем, которые имеют сложную неоднородную структуру. Вероятностные модели с достаточно высокой степенью адекватности описывают вычислительные структуры [10].

При вероятностном моделировании характеристики системы вычисляются наиболее легко для потока заявок, называемого простейшим, обладающего свойствами: стационарности, отсутствия последействия, ординарности.

Одним из методов оценки качества моделей ВС является теория массового обслуживания, позволяющая определить такие показатели качества, как пропускная способность, коэффициент использования, среднее время отклика и другие. Вычислительная система рассматривается как совокупность обслуживающих устройств, в качестве которых выступают различные ресурсы системы — рабочие станции, серверы, оперативная память, КЕШ–память и так далее. Задания, или процессы, предъявляют запросы на обслуживание к этим устройствам, поэтому значительная часть задач оценки качества связана с анализом очередей [11].

В теории массового обслуживания наиболее изученными и исследованными являются аналитические модели ВС, построенные на основе понятий теории цепей Маркова, использующие точные методы анализа [12].

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

Дискретные марковские модели, по сравнению с непрерывными, отражают работу вычислительной системы более точно, поскольку ВС имеют дискретный характер работы и в вычислительной среде присутствует элемент вероятности. Однако непрерывные модели менее трудоемки.

Приближенные методы теории сетей массового обслуживания, например, методы декомпозиции, развивающиеся в последнее время, позволяют расширить класс исследуемых сетей массового обслуживания, однако достаточно точные модели можно получить только для некоторого класса задач [13].

Примечание

На этапе написания данного реферата магистерская работа находилась на этапе разработке. Полный текст работы будет готов к февралю 2015 года.

Список источников

  1. Шнитман В. Современные высокопроизводительные компьютеры. Информационно–аналитические материалы центра информационных технологий / В. Шнитман [Электронный ресурс]. Режим доступа: http://www.citforum.ru/hardware/svk/contents.shtml.
  2. Спортак М., Франк Ч., Паппас Ч. и др. Высокопроизводительные сети. Энциклопедия пользователя. — К.:«ДиаСофт», 1998. — 432с.
  3. Фельдман Л.П., Михайлова Т.В. Параллельный алгоритм построения дискретной марковской модели /Высокопроизводительные параллельные вычисления на кластерных системах. Материалы четвертого Международного научно–практического семинара и Всероссийской молодежной школы. /Под редакцией член–корреспондента РАН В.А. Сойфера. — Самара, 2004. — С. 249–255.
  4. Корнеев В.В. Вопросы повышения эффективности функциони–рования МВС–1000 //Тезисы докладов конференции «Высоко–производительные вычисления и их приложения». 30 октября–2 ноября 2000 года, Черноголовка. — М.:МГУ, 2000. — С.20–21.
  5. Забродин А.В., Елизаров Г.С., Каратанов В.А. и др. Возможности и ближайшие перспективы создания высокопроизводительных вычислительных систем //Тезисы докладов конференции «Высокопроизводительные вычисления и их приложения» 30 октября–2 ноября 2000 года, Черноголовка. — М.:МГУ, 2000. — С.8–9.
  6. Кучереносова О.В. Параллельный алгоритм построения дискретной марковской модели неоднородного кластера // Наукові праці Донецького національного технічного університету. — Донецьк, ДонНТУ, 2010.
  7. Каляев А. В., Левин И.И. Модульно–наращиваемые многопроцессорные системы со структурно-процедурной организацией вычислений. — М.: Янус–К, 2003. — 380 с.
  8. Башарин Г.П., Бочаров П.П., Коган Я.А. Анализ очередей в вычислительных сетях. Теория и методы расчета. — М.: Наука, 1989. — 336с.
  9. Столингс У. Структурная организация и архитектура компьютерных систем. — М.: Вильямс, 2002. — 893 с.
  10. Ивницкий В.А. Теория сетей массового обслуживания. — М: Физматлит, 2004. — 772с.
  11. Клейнрок Л. Вычислительные системы с очередями. — М.: Мир, 1979. — 600с.
  12. Столингс У. Структурная организация и архитектура компьютерных систем. — М.: Вильямс, 2002. — 893с.
  13. Митрофанов Ю.И. Основы теории сетей массового обслуживания. — Саратов: Сарат.ун–та, 1993. — 116с.