Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BİLGİSAYAR MİMARİLERİ 13

Benzer bir sunumlar


... konulu sunumlar: "BİLGİSAYAR MİMARİLERİ 13"— Sunum transkripti:

1 BİLGİSAYAR MİMARİLERİ 13
BİLGİSAYAR MİMARİLERİ 13.Hafta: Çoklu İşlemcili Sistemlerde Ön-Bellek Tutarlılığı Doç.Dr. Ahmet ÖZMEN Sakarya Üniversitesi Bilgisayar Mühendisliği Bölümü

2 Ders Planı Çoklu işlemcili sistemlerde temel meseleler
Ortak bellekli sistemlerde ön bellek Ön bellek tutarlılığı problemi Temel snoopy protokolleri Örnek bir snoopy protokolü Örnek analiz Dağıtık directory ön bellek (geniş ölçekli sistemler)

3 Çoklu işlemcili sistemlerde temel meseleler
İsimlendirme (naming) Hangi veri paylaşılacak? Nasıl adreslenecek? Hangi komutlarla verilere erişilecek? İşlemciler nasıl referans edilecek? Senkronizasyon Birlikte çalışabilmek için prosesler arası koordinasyon sağlanmalı Gecikme ve band genişliği Yüksek performans için yüksek band genişliği gerekli, Gecikmeler performansı kötü yönde etkiliyor, işlemciler beklemek zorunda Hesaplama ile iletişim örtüştürülerek gecikmeler gizlenmeye çalışılır

4 Küçük ölçekli (ortak bellekli) sistemlerde ön bellek
Ön bellekler band genişliğini arttırır Bellek erişim gecikmesini azaltır Bireysel ve paylaşılan veri için oldukça önemlidir

5 Ön bellek tutarlılığı problemi

6 Ön bellek tutarlılığı nedir?
İnformal olarak: Herhangi bir okuma en son yazılan değeri geri döndürmelidir Çok sıkı ve gerçeklemesi zor bir tanım Diğer bir açıklama: Herhangi bir yazma eninde sonunda okuma tarafından görülmelidir Tüm yazmalar uygun sırada görülmelidir Bundan emin olmak için iki kural: Eğer P x yazarsa ve P1 bunu okursa, okuma ve yazma yeteri kadar birbirinden uzaksa P’nin yazdığını P1 görmelidir Aynı bölgeye yazmalar serileştirilmelidir Daima son yazılan görülmelidir

7 Donanımsal ön bellek tutarlılığı çözümleri
Snooping çözümü (snoopy bus): Veri talepleri tüm işlemcilere gönderilir İşlemciler talepleri dinler ve eğer aranılan kopya var ise uygun şekilde cevaplar Broadcast gereklidir Bus ile iyi çalışır (bus broadcast için çok uygundur) Birçok küçük ölçekli makinede kullanılıyor Directory temelli çözümler: Merkezi bir yerde paylaşılan veriye ait bilgiler tutulur Diğer bir yaklaşımda ise dağıtık directory kullanılır (darboğazı aşmak için) Talepler network üzerinden noktadan-noktaya gönderilir Snooping’den daha iyi ölçeklenebilir

8 Temel snoopy protokoleri
Yazma geçersiz (invalidate) protokolu Çoklu okuyucu tek yazıcı Paylaşılan veriye yazma: «invalidate» mesajı tüm işlemcilere gönderilir, ve ellerinde kopya bulunduranlar geçersiz «invalidate» konumuna döndürürler Read miss: Write through: Ana bellek her zaman güncel Write-back: Güncel kopyayı bulmak için ön belleklere göz atmak gerekli Yazma broadcast protokolü: Paylaşılan veriye yazma: Bus üzerinden broadcast ve işlemciler, varsa, kendi kopyalarını güncellerler Read-miss: Ana bellek daima güncel

9 Temel snoopy protokolerinin karşılaştırılması
Write invalidate ve Brodcast yaklaşımı: Invalidate protokolunda yazma işlemi bir transaction ile tamamlanır, oysa broadcast’te daha fazla transaction gerekir (kopyaların güncellenmesi) Invalidate uzayda (spatial) lokallik prensibinden yararlanır: Blok başına sadece bir transaction yapılır Broadcast yaklaşımı okuma ve yazma arasında daha düşük gecikme süresine sahiptir

10 Temel snoopy protokolünde ön belleğin bulanabileceği durumlar
Bir kişiye ait (exclusive) Paylaşılan (shared) Geçersiz (invalid) Diğer snoopy uyarlaması protokoller:

11 Örnek snoopy protokolü
Write invalidate ve write-back ön bellekleri Her ön bellek bloğu bir durumda: Tüm ön bellekler ile ana bellek tutarı ise (clean) Sadece bir ön bellekte değiştirilmiş ise (exclusive) Hiçbir ön bellekte yok ise (invalid) Her ön bellek bloğu bir durumda olmak zorunda: Shared: Blok okunabilir Exclusive: Tek kopya var, blok yazılabilir ve kirli (dirty) Invalid: Blokta data yok Read miss: Tüm ön belleklerin bus’ı snoop (dinlemesine) sebep olur Temiz bir ön bellek bloğuna yazmak write-miss olarak değerlendirilir

12 Snoopy Durum Makinesi – I CPU talepleri

13 Snoopy Durum Makinesi – II Bus talepleri

14 Örnek

15 Örnek

16 Örnek

17 Örnek

18 Örnek

19 Örnek

20 Dağıtık directory ön bellek (Geniş ölçekli sistemler)


"BİLGİSAYAR MİMARİLERİ 13" indir ppt

Benzer bir sunumlar


Google Reklamları