COMA

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

COMA (абревіатура від англ. Cache-only memory architecture) — організація комп'ютерної пам'яті у багатопроцесорних системах, в яких локальна оперативна пам'ять вузла (зазвичай DRAM) використовується виключно як кеш-пам'ять. Така архітектура є відмінною від NUMA (абревіатура від англ. Non-uniform memory access), де оперативна пам'ять вузлів є основною пам'яттю.

У NUMA кожній адресі в глобальному адресному просторі, як правило, призначається фіксований домашній вузол. Коли процесори отримують доступ до деяких даних, копія створюється в їх локальному кеші, але простір залишається виділеним в домашньому вузлі. На противагу цьому, у COMA немає домашнього вузла. Доступ з віддаленого вузла може привести до того, що дані мігрують. У порівнянні з NUMA це зменшує кількість надлишкових копій та може дозволити більш ефективно використовувати ресурси пам'яті. З іншого боку, це створює проблеми при знаходженні конкретної інформації (більше немає домашнього вузла) і що робити, якщо локальна пам'ять заповнюється (при міграції деяких даних в локальній пам'яті, потрібно буде виселити деякі інші дані, які не мають домашнього вузла, куди могли б піти[що?]). Як правило, для реалізації міграції використовуються апаратні механізми когерентності пам'яті.

Величезний обсяг досліджень був виконаний над цим питанням. Були розроблені різні форми каталогів, лінія поведінки для підтримки вільного простору в локальній пам'яті, міграційна лінії поведінки, а також лінії поведінки щодо копій тільки для читання . Були також запропоновані гібридні NUMA-COMA організації, такі як Reactive NUMA, які дозволяють сторінками запуститися в режимі NUMA і переключитися в режим COMA в разі потреби, це реалізовано в WildFire компанії Sun Microsystems.[1][2] Програмне забезпечення на основі гібридної реалізації NUMA-COMA було запропоноване і реалізоване ScaleMP[3] , що дозволяє створення багатопроцесорної системи з спільною пам'яттю в кластері товарних[що?] вузлів.

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. WildFire: A Scalable Path for SMPs (PDF) (англ.). Архів оригіналу (PDF) за 4 березня 2016. Процитовано 9 червня 2016.
  2. Performance Experiences on Sun's WildFire Prototype (англ.). 1999. Архів оригіналу за 25 лютого 2014. Процитовано 9 червня 2016.
  3. United States Patent: Cluster-based operating system-agnostic virtual computing system. Архів оригіналу за 24 лютого 2019. Процитовано 9 червня 2016.

Джерела[ред. | ред. код]