Paylaşılan Bellek Mimarisi

Download Report

Transcript Paylaşılan Bellek Mimarisi

Paylaşılan Bellek Mimarisi
(Shared Memory Architecture)
Murat Olcay ÖZCAN
Trakya Üniversitesi
Bilgisayar Mühendisliği Anabilim Dalı
Giriş
Paylaşımlı bellek sistemleri
mikroişlemcilerde ana konulardan biridir.
Tüm işlemciler bir genel belleği paylaşırlar.
Farklı işlemciler üzerinde yürütülen
görevler arasındaki iletişim genel bellekten
okuyarak ve yazarak gerçekleştirilir.
 Süreçler arası koordinasyon ve
senkronizasyon genel bellek üzerinde
sağlanır.


Bir paylaşılan bellek bilgisayar sistemi
bağımsız işlemcilerden, bellek
modüllerinden ve ara bağlantı ağından
oluşur.
Paylaşılan Bellek Sistemlerinin
Sınıflandırılması

En basit paylaşılan bellek sistemi iki işlemci
tarafından ulaşılabilen bir bellek modülünden
oluşur. İstekler iki port aracılığıyla belleğe ulaşır.

Modüldeki bir çözümleme(arbitration) modülü
gelen isteklerin yönetilmesinden sorumludur.
Kullanılan ara bağlantı ağına göre paylaşılan bellek
sistemleri şu bölümlere sınıflandırılır.

UMA (Uniform Bellek Erişimi)
UMA sisteminde paylaşılan belleğe tüm
işlemciler tarafından ara bağlantı ağı
üzerinden sanki tek bir işlemci belleğine
ulaşıyormuş gibi ulaşılır.
 Tüm işlemcilerin bellekteki her hangi bir
yere eşit erişim süresi hakkı vardır.
 Paylaşılan belleğe erişim dengeli
olduğundan bu sistemlere SMP(simetrik
mikroişlemci) sistemleri de denir.

UMA
NUMA (düzensiz Bellek Erişimi)

Her işlemcinin kendisine ilişik belleği
vardır. Belleğin tek bir adres alanı vardır.
Herhangi bir işlemci direkt olarak gerçek
adresiyle bellek alanına ulaşabilir.
COMA (Cache-only Bellek
Mimarisi)

NUMA ya benzer olarak her işlemcinin
kendi paylaşılan belleği vardır. Fakat
paylaşılan bellek önbelleğe sahiptir.
Veri Yolu Tabanlı Simetrik
Mikroişlemciler
Paylaşılan bellek sistemleri veri yolu tabanlı
yada anahtar bazlı ara bağlantı ağlarıyla
dizayn edilebilirler.
 Birden çok işlemci paylaşılan belleğe
ulaşmaya çalıştığında veriyolu dolu hale
gelebilir. Bu sorunu çözmek için önbellekler
kullanılmaktadır.
 Eğer bir işlemci tüm komutlarını ve verilerini
önbellekte bulabiliyorsa hit rate %100 denir.
 Önbellek tarafından karşılanamayan veri
genel bellekten önbelleğe kopyalanmalıdır.

Basit Önbellek Tutarlılığı Metodları
Eğer tüm önbellekteki veri aynı ise tutarlı
demektir. Ama işlemcilerden biri
önbelleğin üzerine yazarsa tutarlılık
bozulur.
 Bu tutarsızlığı engellemek için şu metodlar
kullanılmaktadır:

Önbellek – Bellek Tutarlılığı
Önbellek – Önbellek Tutarlılığı
Paylaşılan Bellek Sistem Tutarlılığı
Gözetleme Protokolleri (Snooping
Protocols)
Gözetleme protokolleri veriyolu
aktivitelerini izleyerek gerektiğinde uygun
tutarlılık komutlarını taşımakla görevlidir.
 Önbellek tutarlılığını sağlamada ullanılan
gözetleme protokollerinden bazı örnekler
şunlardır:

Write-Invalidate ve Write-Through
Write-Invalidate Write Back Protocol
Write Once
Write-Update – Partial Write-Through
Write-Update and Write-Back
Dizin Tabanlı Protokoller
Bazı ara bağlantı ağlarının doğası gereği ve
paylaşılan bellek sisteminin büyüklüğüne göre
önbelleklerin gözetleme protokolleri ile
yönetimi pratik olmayabilir.
 Gözetleme protokollerindeki broadcasting
teknikleri yerine sadece güncelleme gereken
önbelleklere tutarlılık komutları
gönderilmesini temel almaktadır.
 Dizinler işlemcilerdeki bilgilerin tutulduğu
veri yapılarıdır.

Protokol Sınıflandırılması

Çoğu dizin bazlı protokoller 3 kategori
altında incelenebilir.
◦ Tam-harita dizinler
◦ Sınırlı dizinler
◦ Zincir dizinler
Tam Haritalanmış Dizin
Sınırlı Dizin
Zincir Dizin