19479

Що таке мультипроцесори

Доклад

Информатика, кибернетика и программирование

Що таке мультипроцесори Системи в яких комп'ютери використовують пам'ять спільно зазвичай називаються мультипроцесорами Мультипроцесори з використанням єдиної спільної пам'яті shared memory забезпечується однорідний доступ до пам'яті uniform memory access or UMA є основою дл...

Украинкский

2013-07-12

22.92 KB

7 чел.

Що таке мультипроцесори?

Системи, в яких комп'ютери використовують пам'ять спільно, зазвичай називаються мультипроцесорами 

Мультипроцесори з використанням єдиної спільної пам'яті (shared memory) — забезпечується однорідний доступ до пам'яті (uniform memory access or UMA), — є основою для побудови:

  1.  - векторних паралельних процесорів (parallel vector processor or PVP). Приклади: Cray SV1, Fujitsu AP1000 and AP3000.
  2.  симетричних мультипроцесорів (symmetric  multiprocessor or SMP). Приклади: IBM eServer, Sun StarFire, HP Superdome, SGI Origin.

Проблеми:

 доступ з різних процесорів до загальних даних і забезпечення, в зв'язку з цим, однозначності (когерентності) вмісту різних кешів (cache coherence problem), необхідність синхронізації взаємодії одночасно виконуваних потоків команд.

Мультипроцесори з використанням фізично розподіленої пам'яті (distributes shared memory or DSM):

неоднорідний доступ до пам'яті (non-uniform memory access or NUMA),

Серед систем такого типу виокремлюють:

  1.                 cache-only memory architecture or COMA (системиKSR-1 та DDM),
  2.  cache-coherent NUMA or CC-NUMA (системи SGI Origin 2000, Sun HPC 10000, IBM/Sequent NUMA-Q 2000),
  3.   on-cache coherent NUMA or NCC-NUMA (система Cray T3E).

Мультипроцесори з використанням фізично розподіленої пам'яті (distributes shared memory or DSM):

  1.  неоднорідний доступ до пам'яті (non-uniform memory access or NUMA),
  2.  — спрощуються проблеми створення мультипроцесорів (відомі приклади систем з тисячами процесорів),
  3.  — виникають проблеми ефективного використання розподіленої пам'яті (час доступу до локальної та віддаленої пам'яті може відрізнятися на кілька порядків). 

Що таке мультикомп’ютери?

Системи, в яких комп'ютери працюють кожен з своєю пам'яттю — мультикомп'ютерами

  1.  — не забезпечують спільний доступ до всієї наявної в системах пам'яті (no-remote memory access or NORMA),
  2.  — кожен процесор системи може використовувати тільки свою локальну пам'ять,
  3.  — для доступу до даних, які розташовуються на інших процесорах, необхідно явно виконати операції передачі повідомлень (message passing operations),
  4.  — Основні операції передачі даних: надіслати повідомлення (send), та  отримати повідомлення (receive).

Мультикомп'ютери — даний підхід використовується при побудові двох важливих типів багатопроцесорних обчислювальних систем:

 масивно-паралельних систем (massively parallel processor or MPP), наприклад: IBM RS/6000 SP2, Intel PARAGON, ASCI Red, транскомп'ютерні системи Parsytec,

 кластерів (clusters), наприклад: AC3 Velocity і NCSA NT Supercluster.

Переваги:

— можуть бути утворені на базі вже існуючих у споживачів окремих комп'ютерів, або ж сконструйовані з типових комп'ютерних елементів,

— підвищення обчислювальної потужності окремих процесорів дозволяє будувати кластери з порівняно невеликої кількості окремих комп'ютерів (lowly parallel processing)

— для паралельного виконання в алгоритмах достатньо виділяти тільки великі незалежні частини розрахунків (coarse granularity).

Недоліки:

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

зазвичай призводить до значних часових затримок,

— додаткові обмеження на тип розроблюваних паралельних алгоритмів і програм (низька

інтенсивність потоків передачі даних).