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

Бібіков Ілля Володимирович

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

Кафедра комп'ютерної інженерії

Спеціальність Інженерія программного забезпечення

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

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

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

Зміст

Вступ

Сучасний світ не стоїть на місці. У процесі нових досліджень з'являються все нові і нові завдання. Останнім часом все більшу вагу в інформаційних технологіях набирають завдання з великими обсягами даних. А великі обсяги даних вимагають застосування потужних обчислювальних систем (ОС).

Одним із прикладів обчислювальних систем з розподіленою обробкою є кластери [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). Це типовий випадок побудови кластерної системи. Ця архітектура підтримує єдину базу даних при роботі з декількома комп'ютерами, об'єднаними в кластер. У таких системах усі вузли розділяють доступ до загальних дисків, на яких розташовується єдина база даних. Продуктивність таких систем може збільшуватися як шляхом нарощування числа процесорів і обсягів оперативної пам'яті в кожному вузлі кластера, так і за допомогою збільшення кількості самих вузлів.

Архітектура кластера без поділу ресурсів

Рисунок 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с.