Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсак.docx
Скачиваний:
7
Добавлен:
06.09.2019
Размер:
99.14 Кб
Скачать

Зміст

Вступ ……………………………………………………………………………………3

  1. Функціональний розподіл системи …………………………………………….5

  2. Паралельні обчислювальні системи …………………………………………...6

  3. Моделі паралельних комп’ютерів ……………………………………………..9

  4. Продуктивність паралельних комп’ютерів …………………………………..16

  5. Моделі паралельних обчислень ………………………………………………22

  6. Поняття і термінологія паралельного програмного забезпечення …………23

Висновок ……………………………………………………………………………...27

Список літератури …………………………………………………………………..29

Вступ

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

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

Хоча комерційні додатки можуть у достатній мірі визначити архітектуру більшості майбутніх паралельних комп’ютерів, традиційні наукові додатки будуть залишатися важливими споживачами паралельних обчислювальних технологій. Дійсно, оскільки нелінійні ефекти ускладнюють розуміння теоретичних досліджень, експерименти стають усе більш і більш дорогими, непрактичними чи неможливими з політичних чи яких-небудь інших причин (наприклад, США проводить ядерні іспити, використовуючи лише суперкомп’ютери), то обчислювальні дослідження складних систем стають усе більш і більш важливими. Обчислювальні витрати, звичайно, збільшуються як четвертий ступінь і навіть більше від точності обчислень. Наукові дослідження часто характеризуються великими вимогами до обсягу пам’яті, підвищеними вимогами до організації введення-введення.

  1. Функціональний розподіл системи

В ЕОМ перших трьох поколінь всі обчислювальні функції реалізовувались одним процесором і інтерпретувалися ним, як арифметичні та логічні операції. Висока продуктивність системи утворилась на основі багатопроцесорних комплексів.

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

Система складається із сукупності процесорів, що мають індивідуальну та основну пам’ять.

Рис.1.

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

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

  1. Паралельні обчислювальні системи

Визначень суперкомп’ютерам намагалися давати багато, іноді серйозних, іноді іронічних. Паралельний комп’ютер - це набір процесорів, здатних спільно працювати при вирішенні обчислювальних задач. Таке визначення достатньо широке, що включає як паралельні суперкомп’ютери, що мають сотні чи тисячі процесорів, так і мережі робочих станцій. Коли ця тема піднімалася в конференції comp.parallel, Кен Батчер (Ken Batcher) запропонував такий варіант: суперкомп’ютер – це пристрій, що зводить проблему обчислень до проблеми введення/виведення. Тобто те, що раніше довго обчислювалося, іноді скидаючи щось на диск, на суперкомп’ютері може виконатися миттєво, переводячи вказівники неефективності на відносно повільні пристрої введення/виведення.

Ефективність найшвидших комп’ютерів зросла майже по експоненті. Перші комп’ютери виконували кілька десятків операцій з плаваючою комою за секунду, а продуктивність паралельних комп’ютерів середини дев’яностих досягає десятків і навіть сотень мільярдів операцій у секунду, і, швидше за все цей ріст буде продовжуватися. Однак архітектура обчислювальних систем, що визначають цей ріст, змінилася радикально - від послідовної до паралельної. Ера одно процесорних комп’ютерів продовжувалася до появи сімейства CRAY X-MP / Y-MP - слабко паралельних векторних комп’ютерів з 4 - 16 процесорами, яких у свою чергу перемінили комп’ютери з масовим паралелізмом, тобто комп’ютери з чи сотнями тисячами процесорів.

Ефективність комп’ютера залежить безпосередньо від часу, необхідного для виконання базової операції і кількості базових операцій, що можуть бути виконані одночасно. Час виконання базової операції обмежений часом виконання внутрішньої елементарної операції процесора (тактом процесора). Зменшення такту обмежене фізичними межами, такими як швидкість світла. Щоб обійти ці обмеження, виробники процесорів намагаються реалізувати паралельну роботу всередині чіпа - при виконанні елементарних і базових операцій. Однак теоретично було показано, що стратегія Надвисокого Рівня Інтеграції (Very Large Scale Integration - VLSI) є дорогою, що час виконання обчислень сильно залежить від розміру мікросхеми. Поряд з VLSI для підвищення продуктивності комп’ютера використовуються й інші способи: конвеєрна обробка (різні стадії окремих команд виконується одночасно), багатофункціональні модулі (окремі множники, суматори, і т.д., управляються одним потоком команд).

Все більше і більше в ЕОМ включається більше обчислювальних блоків і відповідна логіка їхнього з’єднання. Кожен такий "обчислювальний блок" має свої власні процесор, пам’ять. Успіхи VLSI технології в зменшенні числа компонент комп’ютера, полегшують створення таких ЕОМ. Крім того, оскільки, хоча і дуже приблизно, вартість ЕОМ пропорційна числу наявних у ній компонент, то збільшення інтеграції компонент дозволяє збільшити число процесорів в ЕОМ при не дуже значному підвищенні вартості.

Інша важлива тенденція розвитку обчислень – це величезне збільшення продуктивності мереж ЕОМ. Ще недавно мережі мали швидкодію в 1.5 Mбіт/с, сьогодні вже існують мережі зі швидкодією в декілька гігабіт за секунду. Поряд із збільшенням швидкодії мереж збільшується надійність передачі даних. Це дозволяє розробляти додатки, що використовують фізично розподілені ресурси, начебто вони є частинами одного багатопроцесорного комп’ютера. Наприклад, колективне використання вилучених баз даних, обробка графічних даних на одному чи декількох графічних комп’ютерах, а вивід і управління в реальному масштабі часу на робочих станціях.

Розглянуті тенденції розвитку архітектури і використання комп’ютерів, мереж дозволяють припустити, що у майбутньому паралельність не буде участю лише суперкомп’ютерів, вона проникне і на ринок робочих станцій, персональних комп’ютерів і мереж ЕОМ. Програми будуть використовувати не тільки безліч процесорів комп’ютера, але і процесори, доступні по мережі. Оскільки більшість існуючих алгоритмів припускають використання одного процесора, то будуть потрібні нові алгоритми і програми здатні виконувати багато операцій одночасно. Наявність і використання паралелізму буде ставати основною вимогою при розробці алгоритмів і програм.

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

Помітною ознакою багатьох паралельних архітектур є те, що доступ до локальної пам’яті процесора дешевший, ніж доступ до віддаленої пам’яті (пам’яті інших процесорів мережі). Отже, бажано, щоб доступ до локальних даних був більш частим, ніж доступ до віддалених даних. Така властивість програмного забезпечення називають локальністю (locality). Поряд з паралелізмом і масштабованістю, він є основною вимогою до паралельного програмного забезпечення. Важливість цієї властивості визначається відношенням вартості віддаленого і локального звертань до пам’яті. Це відношення може варіюватися від 10:1 до 1000:1 чи більше, що залежить від відносної ефективності процесора, пам’яті, мережі і механізмів, використовуваних для розміщення даних у мережі і їх добування.

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