Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SIST_Lektsiyi.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
2.06 Mб
Скачать

Iсторія

Перші досліди в області Grid-технологій пов'язані з розрахунками експериментів у ядерній фізиці. Вважається, що цей досвід взагалі став базою формування World Wide Web, WWW - Всесвітньої Павутини. З ним пов'язують ім'я: Тім Бернес-Лі. Перед цим вченим була поставлена задача знайти спосіб, який дозволив би вченим, які беруть участь в експериментах на Великому адронному колайдері, обмінюватися даними та представляти результати їх обробки на загальне обговорення. Багато фізики, більшу частину часу перебувають у своїх наукових інститутах, теж хотіли повноправно брати участь в аналізі даних.

Тім Бернес-Лі запропонував створити в Європейській організації ядерних досліджень (CERN) систему розподіленого інформаційного забезпечення, засновану на використанні гіпертексту і здатну об'єднати наукові центри всієї Землі. Були написані спеціальні програми, встановлені на багатьох комп'ютерах світу, які були розбиті на групи, пов'язані зі своїм сервером. Ці програми могли працювати з єдиною БД CERN, за допомогою додаткових серверів переробляючи дані і повертаючи результати в єдину БД.

У 1990 році прототип того, що згодом отримало назву Всесвітньої Павутини, був створений в CERN, а починаючи з 1991 року, перші браузери і WWW-сервери з'явилися в розпорядженні ядерних фізиків всього світу. Широке поширення відразу ж отримали мову HTML і протокол HTTP.

Проте теоретичне узагальнення досвіду CERN і розвиток ідеї WWW в область сучасного уявлення про майбутню мережі Grid, було зроблено американськими вченими Яном Фостером і Карлом Кессельманом. За їх поданням, Grid дійсно є "надбудовою" над Інтернетом, призначену для розподілених обчислень при вирішенні задач високої складності в галузі науки і технологій.

На відміну від безструктурної павутини WWW, решітка Grid строго впорядкована. Характерно, що поділу на інформаційні задачі та завдання обчислювальні автори не припускають. Користувач, підключаючись до Grid, отримує доступ до мільйонів комп'ютерів, як для обчислень, так і для зберігання даних, здобутих в результаті рішення, і для розміщення величезних масивів інформації. Першорядне увагу приділяється проблемам безпеки, анонімності, секретності.

Grid-технології вирішення інформаційних завдань

Уже відомі розробки, що підтримують складні розподілені бази даних для багатоканального використання. Одним з проектів є розробка Oracle 10G, призначена для реалізації комерційної Grid-системи. Її механізми підтримують наступні підсистеми та функції:

Grid зберігання даних;

Grid серверів БД;

Grid серверів додатків;

Засоби самонастройки вузлів БД;

Систему управління Grid;

Засоби для поділу інформації між вузлами Grid.

Проаналізуємо, що з викладеного в даному курсі матеріалу про паралельні інформаційних технологіях можна використовувати в рамках розглянутого напрямку досліджень.

Перш за все, припускаючи, що метою досліджень є не просто сервісна підтримка, а оптимізація інформаційного обслуговування, необхідно сформулювати критерій оптимізації. Логічно вибрати таким критерієм мінімум середнього часу виконання одиничного запиту з урахуванням часу його обробки пошуковою системою.

Але ж саме в такому світлі представляється проблема мінімізації часу звернення до бази даних, викладена в лекції 2! І там математично, на основі теорії масового обслуговування, доведено, що активізація сукупної пам'яті БД за допомогою "зустрічній" циркуляції сегментів не тільки забезпечує синхронізацію незалежного багатоканального доступу, але, головне, сприяє повільному, цілком прийнятного росту часу виконання запиту в залежності від зростання числа абонентів . (В іншому випадку цей час швидко прямує до нескінченності.)

Було показано, що одним з методів побудови БД з циркулюючої інформацією є об'єднання серверів в єдину замкнуту систему - в "кільце", за яким циркулюють сегменти цієї бази. Абоненти ж жорстко пов'язані зі своїми серверами, забезпечуючи розподілені, приблизно рівні, потоки запитів на кожен сервер. По кожному запиту має враховуватися середній час очікування потрібного сегмента за рахунок його циркуляції.

Тоді можна собі уявити таку схему функціонування гіпотетичної Асоціації Web-серверів (рис. 1), об'єднаних на основі гігантської сукупної бази даних, світового (або хоча б корпоративного) масштабу. Враховуючи все зростаючу потужність серверів і, головне, - засобів передачі даних, можна вже сьогодні очікувати значного скорочення числа відмов при виконанні запитів, що вимагають складного багатоступеневого трафіку, що залежить від пропускної здатності багатьох проміжних пунктів.

Рис. 1. Асоціація Web-серверів світового інформаційного простору

Відомі проекти Grid-технології вирішення обчислювальних задач

Grid-технології, швидко поширюючись, завойовують ключові позиції в області високих технологій у всьому світі, стверджуючи пріоритетний розвиток всієї широкої області інформаційних технологій (ІТ) як локомотива державного процвітання. Отже, система Grid-обчислень - це розподілена програмно-апаратна комп'ютерна середу, з принципово новою організацією обчислень і управління потоками завдань і даних. Повчальним прикладом практичного втілення концепції Grid може служити глобальний проект China Grid, запущений корпорацією IBM спільно з міністерством освіти Китаю з метою підвищення ефективності науково-дослідної та освітньої діяльності провідних китайських університетів. Grid-система, побудована на операційній платформі Linux, забезпечує інтегровану, відкриту, віртуалізовані і автономну робоче середовище. Нею має бути охоплено близько 100 навчальних закладів по всій країні, що втягне в проект більше 200 000 студентів і викладачів. Завдяки China Grid китайські університети сподіваються скоротити витрати на науково-дослідні та дослідно-конструкторські роботи.

Прикладом реалізації даної технології може служити експериментальний Grid-сегмент МГУ ім. М.В.Ломоносова 4).

В основі цього проекту лежить проект EDG (EU Data GRID - європейський проект для фізики високих енергій, біоінформатики і системи спостережень за Землею). У свою чергу, їм використовується проект Globus (розробник - Argonne National Lab.), Що надає інструментальні засоби зв'язку, інформаційного обслуговування, безпеки, управління ресурсами, локального управління ресурсами і завданнями.

Програмне забезпечення Globus доступно і поширюється вільно. Проект EDG передбачає формування обчислювальних ресурсів на основі аналізу сайтів організацій, підрозділів, обчислювальних вузлів. Типовий сайт містить такі розділи інформації.

Комп'ютер кінцевого користувача, що дозволяє користувачеві взаємодіяти з Grid-середовищем, зокрема, запускати завдання і отримувати результати.

Обчислювальний елемент, який представляє посилання на Grid-інтерфейс до локальної системі управління пакетної обробкою (СУПО).

Робочі вузли, що входять до складу ОЕ і керовані за допомогою СУПО, що приховано від користувача.

Накопичувач даних, керуючий однаковим доступом до будь-яких пристроїв пам'яті. Брокер ресурсів, що приймає завдання від користувача, узгоджувальний вимоги до ресурсів, які містяться в описі завдання, з наявними, і направляє завдання на відповідний сайт ОЕ. Каталог реплік, що підтримує базу даних про місця зберігання оригінальних файлів і всіх їх копій. Щоб отримати доступ до ресурсів МГУ-GRID, необхідний комп'ютер з встановленим користувача Grid-інтерфейсом. Доступ в середу Grid відбувається під ім'ям, що містяться в сертифікаті, і контролюється за допомогою спеціальної програми-посередника (електронної довіреності), яка створюється на обмежений термін за допомогою персонального ключа користувача.

Файл з описом завдання створюється за допомогою мови опису завдань (Job Description Language) і містить необхідні вхідні дані, вимоги до ресурсів та відомості про те, куди повинні бути записані результати обробки завдання.

Основи проектування Центру Grid-технологій

У підході до реалізації ідеї Grid-технологій спостерігається деяка поспішність. Не існує формального аналізу можливих видів запитів, слабо виражене поділ на інформаційні та обчислювальні завдання.

Алгоритми і всі роботи, що виконуються за допомогою обчислювальних засобів, структуровані. Недостатньо пов'язувати виконання запиту на вирішення завдання лише з виділенням обчислювальних ресурсів. Ними треба управляти, а обчислювальний процес - розпаралелювати.

На рис. представлена загальна схема паралельного обчислювального процесу, з якої видно обов'язкову наявність двох керуючих елементів: супервізора і диспетчера. Супервізор управляє ходом обчислювального процесу, реалізуючи його функціональну спрямованість. Диспетчер керує використанням обчислювальних ресурсів.

Рис. Схема паралельного обчислювального процесу

Розглянемо схему організації паралельного обчислювального процесу, характерну для автоматичних або автоматизованих систем управління. Загальний алгоритм функціонування АСУ у вигляді макропрограми відображений блоком 1. Кожна макроінструкція може містити великий обсяг робіт. Це - окремі оператори, завдання (функціональні модулі), процеси та інші макропрограми або містить макроінструкціі, які відповідають логічним операторам, що впливають на вибір її гілки, або мають спеціальний блок управління. В результаті виконання цих операторів формується (блок 2) потік макроінструкцій (черга), що підлягають виконанню процесорами. При цьому можуть враховуватися значення логічних змінних, які розраховані макропрограмами (внутрішнє управління), так і вироблені на основі зовнішнього впливу: керовані об'єктом, параметрами керованого технологічного процесу, оператором з пульта або терміналу. Тобто на цьому рівні виробляється безпосередньо потік завдань. Потім (блок 3) формується певна інтерпретація потоку завдань (макроінструкцій) для диспетчера. Блоки 2 і 3 можуть входити до складу супервізора, що визначає необхідні дії системи управління в процесі її функціонування. Диспетчер 4 розподіляє роботи між процесорами 5 - реалізуєє розпаралелювання. При цьому природно використовується зворотній зв'язок від процесорів з повідомленнями про хід виконання призначених макроінструкцій. Макроінструкціі, що надійшли на процесор в результаті розпаралелювання, виконуються в режимі інтерпретації - запускаються відповідні заздалегідь завантажені, тобто відомі всім процесорам, програми (процеси).

Типи запитів обчислювального характеру до Grid-систем (рис. 2).

Рис. 2. Типи запитів до системи Grid-обчислень

Уявімо собі, що Користувач заходить на сайт великої GRID-Компанії. Його бажання можуть бути наступними:

Він готовий, наприклад, орендувати ресурс для побудови задуманої ним автоматизованої системи управління (наприклад, залізничним транспортом). Користувач в діалоговому режимі детально викладає необхідні характеристики, в тому числі і кількісні. Компанія на основі своїх можливостей узгодить з користувачем надану послугу. Далі йдуть домовленості фінансового та юридичного характеру. Таким чином, користувач, отримавши докладний опис наданих йому ресурсів, сам працює з ними, ввівши по необхідності їх адресацію або застосовуючи принцип віртуальності, - за задумом створюваної системи. При цьому, зрозуміло, він володіє засобами взаємодії між окремими засобами для організації потрібної йому схеми обчислень.

Користувач хоче вирішити або вирішувати періодично, із заданим темпом, по динамічно змінним вихідним даним, транспортну задачу (проблему Хічкока) з відомими обмеженнями пропускної спроможності магістралей. Звертаючись до даної компанії, він припускає наявність в її пакеті прикладних програм (ППП) потрібної програми, та ще розв'язуваної швидко на основі застосування методу розпаралелювання. Якщо умови йому не подобаються, користувач звертається до сайту іншій компанії.

Користувач хоче вирішити конкретну задачу знаходження екстремуму функції від 1020 змінних на позитивній області, обмеженої 524 гіперплощинами і заданої системою диференціальних рівнянь в часткових похідних другого порядку. Звертаючись до Компанії, користувач може розраховувати на наявність оболонок, в які можна вводити конкретні умови задачі і опис виразів. У діалоговому режимі висококваліфікований консультант пропонує вирішити завдання в два етапи: спочатку за допомогою існуючої оболонки знайти рішення системи диференціальних рівнянь, а потім, за допомогою іншої оболонки, знайти екстремум.

На основі цих прикладів можна зробити висновок, що завдання нашої гіпотетичної Grid-Компанії, яку точніше слід назвати "Центр GRID-технологій", досить широкі і різноманітні. Наведемо ряд принципів його діяльності і деякі пункти його обґрунтування.

Необхідність (і неминучість) таких компаній, які володіють великим арсеналом обчислювальних засобів, очевидна. Знеособленого звернення в Інтернеті не буває. Хтось повинен обробляти запити.

Така компанія, очевидно, будучи акціонерним товариством, в свою чергу, може орендувати кошти більш дрібних власників, а також мережеве обладнання, системи передачі даних, включаючи космічні.

Розглянемо, які обчислювальні засоби повинні складати власну технологічну базу Центру. Центр, безсумнівно, має об'єднувати рішення інформаційних і обчислювальних задач. Тому наявність Web-серверів і участь їх у Всесвітній або Регіональної асоціації обов'язково.

Що стосується виключно обчислювальних задач, то тут, як говорилося вище, ресурс може бути складений на договірній основі, на базі фактично розрізнених обчислювальних засобів організацій та окремих власників.

Однак основний капітал Центру GRID-технологій визначається власними обчислювальними засобами та супутнім обладнанням. Його комплектування та розвиток визначається двома можливими напрямами:

комплектацією на базі перспективних або розроблюваних суперкомп'ютерів і багатопроцесорних обчислювальних систем на їх основі;

комплектацією на базі існуючого, стрімко розвивається парку комп'ютерів, робочих станцій і серверів, які за допомогою супутнього мережевого обладнання об'єднані в локальну обчислювальну мережу, що реалізує розподілені обчислення. Цей напрямок, не заперечує перше, безсумнівно, більш перспективно.

Центр повинен бути укомплектований висококваліфікованими математиками-програмістами і системотехніками, що працюють за кількома напрямками:

оперативне консультування користувачів при "доведенні" завдань;

розробка пакета прикладних програм і оболонок;

співпраця з користувачами при спільній розробці складних програмних та інформаційних проектів;

науково-дослідна діяльність з розвитку Grid-технологій і їх застосування;

Проаналізувавши матеріали лекцій, позначимо той пакет прикладних програм і оболонок, який може бути запропонований Центру GRID-Технологій. Це:

рішення систем лінійних рівнянь;

завдання сортування та пошуку;

паралельний логічний висновок;

паралельні технології вирішення задач лінійного програмування;

паралельні технології вирішення задач цілочисельного лінійного програмування;

паралельні технології вирішення транспортної задачі без обмежень і з обмеженнями пропускної здатності магістралей;

паралельні технології знаходження максимальної пропускної здатності мережі;

методи точного рішення завдань розпаралелювання як задач мережевого планування та управління;

завдання оперативного паралельного планування - завдання диспетчирування;

оболонка: кінцево-різницеві методи розв'язання систем диференціальних рівнянь;

оболонка: паралельна технологія вирішення оптимізаційної задачі нелінійного програмування при лінійних обмеженнях;

оболонка: паралельна технологія рішення "плоскої" оптимізаційної задачі нелінійного програмування при нелінійних обмеженнях (легко розвивається на випадки більшої розмірності);

оболонка: паралельний ПРОЛОГ;

оболонка: розрахунок величини збудження нейронів нейромережі.

Слід відзначити також запропоновані численні алгоритми та схеми організації паралельних обчислень в НД і процесорах різної архітектури, а також способи побудови паралельних керуючих процесів з урахуванням їх синхронізації.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]