Kaynak http://www.ceviz.net/cache-bellek-nedir_a314.html
Siz bir uygulamayı ikinci çağırışınızda ilk çağırışınızdan hızlı açılıyorsa cache bellek ile tanıştınız demektir. Peki bu olayın perde arkası nedir?
Cache Bellek en son yaptığınız işlemleri değerlendirerek bir sonraki yapacağınız işlemi %90 tahmin edip bu bilgileri tutan L1 ve L1 in %10 tutturamaması durumunda bu %10 un da %90'ı oranında (siz hesaplayın artık) tahmin edip bu bilgileri tutan L2 adında işlemci çekirdeğine gömülü iki adet statik Ram den oluşur.
Cpu L2'de de bu bilgileri bulamamsı durumunda RAM'e gider. Orada da yoksa HDD'e gider.
Cache Belleği ilk icat edildiği yıllarda board üzerine koymuşlar ve sadece L1'den oluşuyormuş. O zamanlar da bu tahmin mekanizması bayağı işe yarasa da board üzerinde olduğu için Cpu L1 ile iletişime geçeceği zaman board'un veri yolu hızına düştüğü için pek şimdikisi kadar kullanışlı değildi. Abiler bu Cache'i Cpu içine koymak istiyorlardı. Fakat bu o kadar kolay değildi. Milyonlarca transistörü Cpu içine koyan adamlar, bir türlü Cache'i çekirdeğe gömemiyorlardı ki çekirdek hızında erişebilsinler. Bir ara akıllarına bir fikir geldi. Madem biz bunu çekirdeğe koyamıyoruz çekirdeğe en yakın yere koyalım dediler ve bu fikrin ürünü olan SLOT işlemciler piyasaya çıktı. Bu tip işlemcilerde çekirdeğin etrafında Cache'ler görülebilir. Fakat bu yöntemle hem istedikleri performans'ı alamadılar hem de işlemci board üzerinde dikine durduğu için sabitlemek zor oluyordu. Bir süre sonra Cachle'i çekirdeğe gömmeyi başardılar. Hatta L2 ile birlikte. Cache li işlemciler normallerinden daha pahalıydı. Çünkü cache'i çekirdeğe gömmek zor bir işlemdi. Öyle ki ürettikleri 100 işlemciden 98'ini çöpe atmak zorunda kalıyorlardı.
İşte bir işlemci alırken dikkatimizi çeken 512 cache olayının hikayesi kısaca böyle.
Nasıl Çalışır?
Her zaman şu örnek verilir. Bir lokantaya ilk defa gidip bir kase çorba istediğinizde Çorbanın yapılıp gelmesi uzun sürebilir. Eğer yemeğin yapıldığı yerin(HDD) hemen ön tarafında belirli bir miktar yemeği sıcak tutabilecek bir hazne varsa (RAM) ve siz oradaki çeşitlerden birini yiyecekseniz çorbanın pişmesini beklemezsiniz. Siz eğer aynı yere daha sık gelmeye başlarsanız garson sizi tanır ve sizin geleceğiniz saatlerde yemek arabasına(L2) sizin çeşitlerinizi de koyar. Sürekli müşterisi olursanız ve %90 aynı siparişleri veriyorsanız geleceğiniz saatte çorbanızı masanızda(L1) hazır bulursunuz.
Ne işe yarar?
İşte siz örn: Excel'i ilk açtığınızda normal hızda açılır. 2. Açtığınızda nasıl açıldığını bile fark edemezsiniz.
Cache farkını Setup'tan L1 ve L2 seçeneklerini DİSABLE yapıp test edebilirsiniz.
Statik ram den bahsettik onu da açıklayalım;
Çalışma prensibi olarak temelde 2 tip RAM vardır. Dynamic ve Static.
Static RAM makine açık olduğu sürece üzerine yazılan veriyi tutabilir. Transistörlerden imal edilmiştir.
Dynamic RAMler üzerindeki veriyi tutabilmek için belirli aralıklarla kondansatörlerle tetiklenmeleri gerekir. Aksi takdirde üzerindeki veri kaybolur. Bunun için ana kart üzerinde bu tetiklemeyi yapacak ayrı bir devre dizayn edilmiştir ve bu yüzden dynamic ramler cache bellek olarak çekirdekte kullanılamazlar. Bildiğimiz ramler Dynamic ramdir. Static ramler yapılarında transistör kullanıldığı için daha pahalıdır.
6 Ağustos 2009 Perşembe
Kaydol:
Kayıtlar (Atom)