загрузка...
загрузка...
На головну

МВК з загальнодоступною пам'яттю

Багатопроцесорні обчислювальні комплекси.

Розглянуті вище OKMD - системи погано пристосовані для паралельного виконання різних потоків команд (різних програмних гілок однієї задачі або програм різних завдань). Таке виконання стало здійснюватися на декількох паралельно працюючих "повноправних" процесорах (що містять УУ, АЛУ), що використовують загальну для них пам'ять або мають доступ лише до власної оперативної пам'яті. В останньому випадку взаємодія програм, що виконуються на процесорах, здійснювалося за рахунок передачі (з підтримкою операційної системи) повідомлень один одному з комунікацій, що зв'язують такі обчислювальні вузли.

Під організацією загальнодоступною оперативної пам'яті МВК розуміється можливість доступу за даними до будь-якої її осередку при виконанні операцій в будь-якому процесорі комплексу.

Об'єднання процесорів на загальній оперативної пам'яті із забезпеченням однакового часу доступу від всіх процесорів визначає підклас SMP (Symmetric multiprocessor). Перевагою такої організації є простота програмування задач навіть з урахуванням необхідності синхронізації і взаємного виключення програм гілок (паралельних процесів) цих завдань. Недоліком такого підходу є неефективність підключення до загальної пам'яті великого числа процесорів через зростаючих затримок виконання операцій в них у зв'язку зі збільшенням, незважаючи на значне "розшарування" оперативної пам'яті, числа конфліктів при зверненні до неї і, відповідно, часів очікування даних при одночасному зверненні до блокам пам'яті від багатьох процесорів. Об'єднання на загальній пам'яті навіть кількох десятків процесорів ставало нераціональним.

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

Іншим варіантом використання загальнодоступною пам'яті для процесорів є її розподіл по багатьом обчислювальним вузлам, об'єднаних спільною магістраллю передачі даних, через яку процесор в кожному обчислювальному вузлі при виконанні операцій може мати доступ до осередків пам'яті інших обчислювальних вузлів. При цьому час звернення до пам'яті збільшується з віддаленням від процесора того обчислювального вузла, до пам'яті якого відбувається звернення. Така організація обчислювальної системи з загальнодоступною пам'яттю носить назву NUMA (Non Uniform Memory Access). Якщо при виконанні програми процесорами основна кількість звернень за даними виконуватиметься до пам'яті "свого" вузла або близько розташованих вузлів, то використання NUMA-системи буде ефективним при значному числі обчислювальних вузлів. Досягнення цього вимагає істотного ускладнення програмування обчислень. В іншому випадку "масштабування" NUMA-системи буде обмежена. Прикладами NUMA-систем є системи SGI Origin2000, Sun HPC 10000, IBM / Sequent NUMA-Q 200

Є обчислювальні системи, що містять у вузлах NUMA - системи SMP - підсистеми (SMP - "цеглини"). Прикладом такої системи є комплекс SPP-1200, де SMP-підсистеми ( "гиперузлов") об'єднуються в топології "подвійний тор".

Многопроцессорность. «-- попередня | наступна --» Кластерні обчислювальні системи.
загрузка...
© om.net.ua