990 likes | 1.38k Views
‘CACHE’ Bellek. Bellek. İkincil Bellek. İşlemci. ‘CACHE’ BELLEK. GÖRÜNTÜ BELLEK. BELLEKLER. YAZMAÇ. ‘CACHE’ BELLEK. ANA BELLEK. DİSK ‘CACHE’ BELLEĞİ. DİSK. HIZ. MALİYET. KAPASİTE. ‘CACHE’ Bellek. İşlemci. Ana Bellek. Adres Bilgileri. Veriler. Denetim Birimi.
E N D
‘CACHE’ Bellek Bellek İkincil Bellek İşlemci ‘CACHE’ BELLEK GÖRÜNTÜ BELLEK
BELLEKLER YAZMAÇ ‘CACHE’ BELLEK ANA BELLEK DİSK ‘CACHE’ BELLEĞİ DİSK HIZ MALİYET KAPASİTE
‘CACHE’ Bellek İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘CACHE’ Bellek Sınıflandırmaları • İçeriklerine Göre (Unified / Split) • Yazma Yöntemine Göre (WriteThrough / CopyBack) • Erişim Yöntemine Göre (Fully Associative / Set Associative / Direct Mapping)
‘Split’ ve ‘Unified’ ‘Cache’ İşlemci Komut ‘cache’ Belleği İşlemci Komut/Veri ‘cache’ Belleği Veri ‘cache’ Belleği • Sadece Okuma • Komutlar Ardışık • Küçük Döngülerin İyileştirilmesi
‘WriteThrough Cache’ ‘Read hit’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘WriteThrough Cache’ ‘Read miss’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘WriteThrough Cache’ ‘Write hit’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘WriteThrough Cache’ ‘ Write miss’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘CopyBack Cache’ ‘Read hit’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘CopyBack Cache’ ‘Write hit’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘CopyBack Cache’ ‘Read miss’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
‘CopyBack Cache’ ‘Write miss’ İşlemci Ana Bellek Adres Bilgileri Veriler Denetim Birimi
Erişim yöntemine göre • ‘Fully Associative Cache’ • ‘Set Associative Cache’ • ‘Direct Mapping Cache’
= = = = = = = ‘Fully Associative Cache’ Adres Adresler Veriler hit/miss
‘Set Associative Cache’ Adres Ekleri Veriler 0 1 Adres 2 = N-1 0 1 2 = N-1 0 1 2 = N-1 0 1 2 = N-1 hit/miss
‘Direct Mapping Cache’ Veriler Adres Ekleri 0 1 Adres 2 = N hit/miss
Adres ‘Fully Associative Cache’ L=4 Adresler Veriler = = = = = = = hit/miss
‘Set Associative Cache’ L=4 Adres Ekleri Veriler 0 1 Adres 2 = N-1 0 1 2 = N-1 0 1 2 = N-1 0 1 2 = N-1 hit/miss
‘Direct Mapping Cache’ L=4 Veriler Adres Ekleri 0 1 Adres 2 = N-1 hit/miss
‘Cache’ bellek ve adres bitleri ‘cache’ bellek sığası = KLN Adres log2N log2L Satır içi adresi Set Numarası Adres eki N = 1 ‘Fully Associative Cache’ bellek K = 1 ‘Direct Mapping Cache’ bellek
30 28 28 28 128 128 32 32 32 32 32 İşlemci Ana Bellek Adres Bilgileri 2 128 bit veri
‘cache’ belleğe yeni gelen veriye yer açma stratejileri • LRU ‘Least Recently Used’ • Geliştirilmiş LRU
Least Recently Used(LRU) Most Recently Used Adres Ekleri Veriler 0 1 2 3 4 5 ... Least Recently Used N-1
Geliştirilmiş LRU Adres Ekleri Veriler Gölge Adres Ekleri Geçici 0 0 1 1 2 2 N N • Geçici ‘miss’ = Hem ‘cache’ bellekte hem de gölge adres eklerinde yok • Gölge ‘miss’ = ‘cache’ bellekte yok, gölge adres eklerinde var • Geçici olarak işaretlenmiş veriler çıkarılmaya aday.
Ön belleklerde tutarlılık Adres DMA Denetleyici İşlemci Adres Veriler G/Ç Birimi Veri Adres Bilgileri Ana Bellek • Ön bellekteki veriyi geçersiz kılma eklentisi • “write through”: çözüm? • “copy back”: DMA öncesi güncelle
Ön belleklerde tutarlılık “Copy back” türü ön bellekteki verilerin durum bilgileri
Ön belleklerde tutarlılık G/Ç Birimi DMA Denetleyici İşlemci Adres Veriler Adres Bilgileri Ana Bellek Veri Ön bellek aracılığıyla DMA gerçekleştirilmesi
Ön belleklerde tutarlılık DMA Denetleyici İşlemci Adres G/Ç Birimi Veriler Adres Bilgileri Adres İzleme Bilgileri Veri Ana Bellek Ön bellekteki verileri dışardan izleyebilmek için kullanılan ek
Ön belleklerde tutarlılık DMA Denetleyici İşlemci Adres G/Ç Birimi Veriler Adres Bilgileri Adres İzleme Bilgileri Veri Ana Bellek Ön bellekteki verilerin dışardan koşut olarak izlenmesi
Ön belleklerde tutarlılık İşlemci 1 Adres Veriler Adres Bilgileri Ana Bellek İşlemci 2 Veri İki işlemci tarafından ortak kullanılan ön bellek
İşlemci İşlemci Adres Adres Veriler Veriler Adres Bilgileri Adres Bilgileri Adres İzleme Bilgileri Adres İzleme Bilgileri Ön belleklerde tutarlılık . . . İşlemci Adres Ana Bellek Çok işlemcili bir sistemde ön belleklerin izlenmesi Veriler Adres Bilgileri Adres İzleme Bilgileri
Görüntü Bellek Bellek İkincil Bellek İşlemci ‘CACHE’ BELLEK GÖRÜNTÜ BELLEK
Görüntü Bellek Görüntü Adres Adres Dönüştürücü Sayfa Hatası Fiziksel Adres Ana Bellek
Görüntü Bellek Filozofisi • Sık kullanılan kod kesimleri ana bellekte tutulur. • Kod kesimleri az kullanılmaya başladıkça daha yavaş belleklere taşınır. • Eğer yönetim algoritması başarılıysa maliyeti yavaş belleğin maliyetine, performansı da hızlı belleğin performansına yakın olacaktır.
Görüntü ve ‘Cache’ bellek farklılıkları • Aranan verinin veya sayfanın bulunup bulunmaması • ‘Cache’ bellekte verinin bulunamaması bulunmasından 4-20 kez daha islemi yavaslatir • Sayfanın bellekte bulunamaması bulunmasından 1000-10000 kez islemi yavaslatir .
Görüntü ve ‘Cache’ bellek farklılıkları • Teknolojilerdeki ilerleme • 20 yılda bellek teknolojisi 1000 kat hızlanmış. • Aynı sürede diskler 10 kat hızlanmış. • Yer değiştirme sürecinin uzunluğu • ‘Cache’ bellekte verinin bulunamaması durumunda işlemciye başka görev atanamaz. • Aranan sayfanın bellekte bulunamaması durumunda sayfa diskten kopyalanırken işlemciye başka görevler atanabilir.
Görüntü ve ‘Cache’ bellek farklılıkları • Gecikme • Bellekte bulunamayan bir verinin belleğe getirilmesi 10000-1000000 komut süre tutabilir. • ‘Cache’ bellekte bulunmayan bir verini ana bellekten getirilmesi bir komut işletimi kapsamındadır.
Görüntü adres fiziksel adres dönüşümü GörüntüAdres Sayfa içi adres Sayfa başlangıç adresi Adres Dönüştürücü Sayfa Numarası Sayfa Bulunamadı Sayfa
Hızlı adres dönüşümü GörüntüAdres Sayfa içi adres Hızlı Adres Dönüştürücü Sayfa Numarası Sayfa başlangıç adresi Sayfa Bulunamadı Adres Dönüştürücü Sayfa Bulunamadı Sayfa
Hızlı adres dönüşümü GörüntüAdres Sayfa içi adres Sayfa Numarası Segment Numarası Sayfa başlangıç adresi Sayfa
Görüntü Bellekte Yer Değiştirme • Sayfa hataları çok uzun süre. Hangi sayfanın çıkarılacağı kararı çok önemli. • Sayfa hatası oluştuğunda karar vermek için yeterince zaman var. • Sayfa hatası oluştuğunda başka görevler işlemciye anahtarlanabilir.
Görüntü ve Fiziksel Adres Evrenleri Fiziksel Adres Evreni Görüntü Adres Evreni
Adres Dönüştürme Sayfa başlangıç adresleri 0 1 2 Sayfa Numarası N - 2 N - 1 N : Görüntü Adres Evrenindeki Sayfa Sayısı
= = = = = = = Adres Dönüştürme Sayfa Numarası Sayfa başlangıç adresleri Sayfa Numaraları Fiziksel bellekteki sayfa sayısı kadar Sayfa Bulundu/Bulunamadı
‘Pipeline’ ‘Pipeline’ Aşamaları 1 2 3 4 5 6 7
A B A C B A D C B A D C B A D C B A D C B A D C B D C D ‘Pipeline’ ‘Pipeline’ Aşamaları 1 2 3 4 5 6 7 Zaman
A B A C B A D C B A D C B A D C B A D C B A D C B D C D ‘Pipeline’ Performansı ‘Pipeline’ Aşamaları Zaman
Bir Komutun Evreleri Komut Getir Komut Yorumla Adres Hesapla İşlenenleri Getir Komut Uygula Sonucu Sakla Program Sayacını Güncelle
Komut uygulama ‘pipeline’ için sorun yaratan durumlar: • Koşullu sapmalar. • Bir komutun sonraki komutun kullanacağı veriyi üretmesi. • Bir komutun önceki komut tarafından kullanılan yazmaca yazması. • Ardışık iki komutun aynı yazmaca yazması.