Използваната в UMA честотна лента за паметта е ограничена, тъй като използва единичен контролер на паметта. Основният мотив на появата на NUMA машини е да се увеличи наличната честотна лента в паметта чрез използване на множество контролери за памет.
Сравнителна таблица
Основа за сравнение | UMA | NUMA |
---|---|---|
Основен | Използва един контролер на паметта | Многократен контролер на паметта |
Тип на използваните автобуси | Единична, множествена и напречна греда. | Дърво и йерархична |
Време за достъп до паметта | равен | Променя се според разстоянието на микропроцесора. |
Подходящ за | Общи приложения и приложения за споделяне на време | Приложения в реално време и критични за времето |
скорост | По-бавно | По-бързо |
Bandwidth | ограничен | Повече от UMA. |
Определение на UMA
UMA (Uniform Memory Access) система е споделена памет за многопроцесорни устройства. В този модел се използва единична памет и достъпът до нея се осъществява от всички процесори, представящи мултипроцесорната система с помощта на мрежата за взаимно свързване. Всеки процесор има еднакво време за достъп до паметта (латентност) и скорост на достъп. Той може да използва някой от един автобус, няколко автобуса или напречен ключ. Тъй като осигурява балансиран достъп до споделена памет, той също е известен като SMP (симетрични многопроцесорни) системи.
Типичният дизайн на SMP е показан по-горе, където всеки процесор е първоначално свързан с кеша, след което кешът е свързан с шината. Най-накрая автобусът е свързан с паметта. Тази UMA архитектура намалява претенцията за шината чрез извличане на инструкциите директно от отделния изолиран кеш. Той също така осигурява еднаква вероятност за четене и запис на всеки процесор. Типичните примери за модела UMA са сървърите на Sun Starfire, Compaq alpha server и HP v series.
Определение на NUMA
NUMA (Неограничен достъп до паметта) също е многопроцесорен модел, в който всеки процесор е свързан със специалната памет. Тези малки части от паметта обаче се комбинират, за да направят едно адресно пространство. Основното, което трябва да обмислим тук, е, че за разлика от UMA, времето за достъп на паметта зависи от разстоянието, където е поставен процесорът, което означава различно време за достъп до паметта. Тя позволява достъп до всяко място в паметта, като се използва физическият адрес.
Както бе споменато по-горе, архитектурата NUMA е предназначена да увеличи наличната честотна лента за паметта и за която използва множество контролери за памет. Той съчетава множество машинни ядра в „ възли “, където всяко ядро има контролер за памет. За достъп до локалната памет в NUMA машината ядрото извлича паметта, управлявана от контролера на паметта, от нейния възел. Докато за достъп до отдалечената памет, която се обработва от другия контролер на паметта, ядрото изпраща заявката за памет чрез връзките за взаимно свързване.
NUMA архитектурата използва дървените и йерархичните шинни мрежи, за да свърже блоковете памет и процесорите. BBN, TC-2000, SGI Origin 3000, Cray са някои от примерите на архитектурата NUMA.
Основни разлики между UMA и NUMA
- Моделът UMA (споделена памет) използва един или два контролера на паметта. В сравнение с това, NUMA може да има множество контролери за достъп до паметта.
- В UMA архитектурата се използват единични, множество и напречни автобуси. Обратно, NUMA използва йерархична и дървесна шина и мрежова връзка.
- В UMA времето за достъп до паметта за всеки процесор е същото, докато в NUMA времето за достъп до паметта се променя, като се променя разстоянието на паметта от процесора.
- Приложенията с общо предназначение и споделяне на времето са подходящи за UMA машините. За разлика от това, подходящото приложение за NUMA е в реално време и критично за времето.
- Паралелните системи, базирани на UMA, работят по-бавно от NUMA системите.
- Когато става въпрос за UMA трафик, имат ограничена честотна лента. Напротив, NUMA има повече от UMA.
заключение
UMA архитектурата осигурява еднаква обща латентност на процесорите, които имат достъп до паметта. Това не е много полезно, когато се осъществява достъп до локалната памет, защото латентността ще бъде еднаква. От друга страна, в NUMA всеки процесор има своята специална памет, която елиминира латентността, когато се осъществява достъп до локалната памет. Латентността се променя като разстоянието между процесора и промените в паметта (т.е., Нееднородни). Въпреки това, NUMA подобри производителността в сравнение с UMA архитектурата.