![](http://gadget-info.com/img/difference-between/192/difference-between-uma.jpg)
UMA'da kullanılan bant genişliği, tek bellek denetleyicisini kullandığından bellekte sınırlandırılmıştır. NUMA makinelerinin ortaya çıkmasının temel nedeni, çoklu bellek denetleyicileri kullanarak mevcut bant genişliğini belleğe yükseltmektir.
Karşılaştırma Tablosu
Karşılaştırma için temel | UMA | numa |
---|---|---|
Temel | Tek bir hafıza kontrolörü kullanır | Çoklu bellek denetleyicisi |
Kullanılan otobüs türü | Tek, çoklu ve enine çubuk. | Ağaç ve hiyerarşik |
Hafıza erişim süresi | Eşit | Mikroişlemci mesafesine göre değişir. |
İçin uygun | Genel amaçlı ve zaman paylaşım uygulamaları | Gerçek zamanlı ve kritik zaman uygulamaları |
hız | Yavaş | Daha hızlı |
Bant genişliği | Sınırlı | UMA'dan daha fazla. |
UMA'un tanımı
UMA (Uniform Memory Access) sistemi, çok işlemciler için paylaşılan bir bellek mimarisidir. Bu modelde, ara bağlantı ağı yardımıyla çok işlemcili bir sistem sunan tüm işlemciler tarafından tek bir bellek kullanılır ve bunlara erişilir. Her bir işlemcide eşit bellek erişim süresi (gecikme süresi) ve erişim hızı bulunur. Tek bir veri yolu, çoklu veri yolu veya travers anahtarını kullanabilir. Dengeli paylaşımlı hafıza erişimi sağladığı için SMP (Simetrik çok işlemcili) sistemler olarak da bilinir.
![](http://gadget-info.com/img/difference-between/192/difference-between-uma-2.jpg)
SMP'nin tipik tasarımı, her bir işlemcinin önce önbelleğe, ardından önbellek veriyoluna bağlı olduğu yukarıda gösterilmiştir. Sonunda veriyolu belleğe bağlanır. Bu UMA mimarisi, doğrudan bireysel önbellekten gelen talimatları alarak yönergeleri azaltır. Ayrıca her işlemciye okuma ve yazma konusunda eşit bir olasılık sunar. UMA modelinin tipik örnekleri Sun Starfire sunucuları, Compaq alpha sunucusu ve HP v serisidir.
NUMA'nın tanımı
NUMA (Düzgün Olmayan Bellek Erişimi) ayrıca her işlemcinin ayrı belleğe bağlı olduğu çok işlemcili bir modeldir. Bununla birlikte, hafızanın bu küçük kısımları tek bir adres alanı oluşturmak için birleştirilir. Burada düşünülecek en önemli nokta, UMA'nın aksine, belleğin erişim zamanının, işlemcinin yerleştirildiği mesafeye dayanmasıdır; bu, değişen bellek erişim süresi anlamına gelir. Fiziksel adresi kullanarak herhangi bir hafıza konumuna erişim sağlar.
![](http://gadget-info.com/img/difference-between/192/difference-between-uma-3.jpg)
Yukarıda bahsedildiği gibi, NUMA mimarisinin belleğe mevcut bant genişliğini arttırması ve bunun için çoklu bellek kontrol cihazları kullanması amaçlanmıştır. Çok sayıda makine çekirdeğini, her bir çekirdeğin bellek denetleyicisine sahip olduğu “ düğümler ” halinde birleştirir. NUMA makinesindeki yerel belleğe erişmek için çekirdek, bellek denetleyicisi tarafından düğümü tarafından yönetilen belleği alır. Diğer bellek kontrolörü tarafından yönetilen uzaktaki belleğe erişirken, çekirdek, bellek talebini ara bağlantı linklerinden gönderir.
NUMA mimarisi, bellek bloklarını ve işlemcileri birbirine bağlamak için ağaç ve hiyerarşik veri yolu ağlarını kullanır. BBN, TC-2000, SGI Origin 3000, Cray NUMA mimarisinin örneklerinden bazılarıdır.
UMA ve NUMA Arasındaki Temel Farklar
- UMA (paylaşılan bellek) modeli bir veya iki bellek denetleyicisi kullanır. NUMA, belleğe erişmek için birden fazla bellek denetleyicisine sahip olabilir.
- UMA mimarisinde tek, çoklu ve çapraz çubuklar kullanılıyor. Buna karşılık, NUMA hiyerarşik ve ağaç tipi veri yolu ve ağ bağlantısı kullanıyor.
- UMA'da her işlemcinin belleğine erişim süresi aynı iken NUMA'da belleğe erişme süresi işlemciden uzaklığı değiştikçe değişir.
- Genel amaçlı ve zaman paylaşımı uygulamaları UMA makineleri için uygundur. Buna karşılık, NUMA için uygun uygulama gerçek zamanlı ve zaman açısından kritik merkezlidir.
- UMA tabanlı paralel sistemler, NUMA sistemlerinden daha yavaş çalışır.
- Bant genişliğine gelince UMA, sınırlı bant genişliğine sahip. Aksine, NUMA UMA'dan daha fazla bant genişliğine sahiptir.
Sonuç
UMA mimarisi, belleğe erişen işlemciler için aynı genel gecikmeyi sağlar. Yerel belleğe erişildiğinde bu çok yararlı değildir, çünkü gecikme aynı olacaktır. Öte yandan, NUMA'da her işlemcinin yerel belleğe erişildiğinde gecikmeyi ortadan kaldıran özel bir belleği vardır. Gecikme, işlemci ile bellek arasındaki mesafe değiştikçe değişir (örn. Düzensiz). Bununla birlikte, NUMA performansı UMA mimarisine göre geliştirmiştir.