Paylalan Bellek Mimarisi Shared Memory Architecture Murat Olcay

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
- Slides: 21