Page 19 - 4868
P. 19
17 Ошибка! Стиль не определен.
а потім переглядає ці таблиці в пошуках іншого процесу, що вимагає запуску.
Саме така організація, в основі якої лежить єдина система, і відрізняє
мультипроцесор від мультикомп’ютера.
Організація паралельних обчислень для комп’ютерів даного класу
значно простіша, ніж для систем з розподіленою пам’яттю. В даному випадку
не потрібно думати про розподіл масивів. Однак комп’ютери цього класу
мають порівняно невелику кількість процесорів і високу вартість. Тому
зазвичай використовуються різноманітні рішення, що дозволяють збільшити
число процесорів, але при цьому зберегти можливість роботи в рамках
єдиного адресного простору.
Зокрема спільна пам’ять може бути фізично розподіленою, але всі
процесори можуть мати доступ до пам’яті будь-якого іншого процесора.
Основна проблема, яку необхідно при цьому вирішувати – забезпечення
когерентності кеш-пам’яті окремих процесорів. Реалізація заходів щодо
забезпечення когерентності кешів дозволяє значно збільшити число
паралельно працюючих процесорів у порівнянні з SMP-комп’ютером. Такий
підхід має назву неоднорідного доступу до пам’яті (non-uniform memory
access або NUMA). Серед систем з таким типом пам’яті виділяють:
1) системи, в яких кожний процесор має один і той же час доступу до
будь-якого модуля пам’яті;
2) системи, в яких для представлення даних використовується тільки
локальна кеш-пам’ять процесорів (cache-only memory architecture або
COMA);
3) системи, в яких забезпечується когерентність локальних кешів різних
процесорів (cache-coherent NUMA або CC-NUMA);
4) системи, в яких забезпечується спільний доступ до локальної пам’яті
різних процесорів без підтримки на апаратному рівні когерентності кешу
(non-cache coherent NUMA або NCC-NUMA).
На рисунку 1.4 наведено деякі типові схеми зв’язків елементів в
мультипроцесорних системах.
Рисунок 1.4 – Архітектура багатопроцесорних систем із спільною пам’яттю:
системи з однорідним (а) та неоднорідним (б) доступом до пам’яті