Hep yüzeysel teknolojik yazılar okumaktan sıkılanlara buz dağının 1 cm altından bir yazı 😀

Malum Apple'ın CPU'da benchmarklar'da farkı hızla açtığını görüyoruz. Peki Apple'ın kendi CPU'sunu ve GPU'sunu tasarlamakta ki asıl amacı sadece kas gücü mü? Bu yazıda kendi işletim sistemini ve işletim sistemine giren yazılımları kontrol etmenin , CPU Cache tasarımında ki önemine kısaca değinmeye çalışacağım.

Şimdi burası çok teknik bir yer değil ondan dolayı çok basit anlatmaya çalışacağım belki birilerinin ilgisini çeker. Öncelikle Cache nedir ondan başlamak lazım, Cache CPU'larda bulunan ALU(Arithmetic Logic Unit,Aritmetik Mantık Ünitesi)'ya dataları aktaran ve CU(control ünitesine) ile ise haberleşen bir yapıdır. ALU,CU,Cache zaten çekirdeği oluşturur. Cache'e bir çeşit RAM'dir diyebiliriz. Tabii ki hızları çok çok daha yüksektir. Fakat Cache'ler Ram'ler gibi standart değildir. Kullanıldığı CPU'ya göre veya nesle göre yapıları değişebilir. CPU'ların hızını çok etkileyen bir faktör Cache Miss(cache ıskalama)'tir. Cache Miss pek çok durumda olabilir fakat sıklıkla görüleni Data'nın L1 Cache'ine yeterli hızda ulaşmamasıdır. Bu durumda elde data olmadığından CPU işlem yapamaz. CPU'nun bu veriyi almak için L2'yi kontrol etmesi gerekir. L2'nin L1'den 10 kat kadar daha yavaş olduğunu düşünürsek ve CPU L1'den data alırken 100 taneden 1 tanesini bile ıskalasa %10 yavaşlama görülür CPU'da(Kısaca IPC'de %10 düşer). Her Cache bazı dataları ve talimatları aktarmaya daha uygundur örnek olarak bir tanesi Float'ta iyiyken diğeri Integer aktarmaya uygundur(tabii ki bu kadar değil binlerce talimat var aslında 😀 ). Apple'ın avantajı şimdi devreye giriyor, eğer siz işletim sisteminizin ve uygulamalarınızın altyapılarının hangi instruction(talimatları) ve data'ları daha sık kullandığını biliyorsanız Cache'lerinizi buna göre optimize edebilirsiniz. Cache'leriniz optimize olduğunda L1 Cache'iniz sürekli dolu kalır ve bu sayede ıskalama oranınız düşer. Bunun avantajını benchmarklarda göremezsiniz çünkü benchmarklar bu tip avantajları ortadan kaldırmaya yönelik hazırlanır fakat gerçek hayatta kullanırken hissedebilirsiniz çünkü gerçek hayatta uygulamalar benchmarklar gibi her türlü instruction ve data tipini kullanmazlar. Apple'ın CPU ve GPU'larını kendi tasarlamak istemesinde ki en büyük etkenlerden biri de bu tip donanım seviyesinde optimizasyonları yapabilme özgürlüğüne sahip olması.
#CPU #Apple

BeğenFavori PaylaşYorum yap
  • kirazerik @kirazerik

    teknik olarak dediklerinizde haklılık payı olmakla birlikte dikey büyümeyi de göz önüne aldılar. android için editörler snapdragon son çipi için telefon firmaları birbirine girecek diyorlar. Ki o iş öyle değil o çipler üretilmeden satılıyor firmalara. Apple'ın bağımlılık gibi bir derdi yok maliyet düşürme derdinde. Elbette bunu yaparken de boş durmuyor kendine göre dizayn ediyor işlemcileri. Buradan şuna gelelim intel amd kaç yıllık firma biz işlemci yapamayız dememek lazım bak adamlar para olunca mobile cpu ve gpu yaptılar.

  • Azizus @azizus

    Arkadaşlar Apple'ın telefon teknolojisinde 1.olduğu kabul edilmesi gereken bir gerçek diğer markalar android işletim sistemini kullanmakla yola 1-0 geriden başlıyor zaten

  • Papa Emeritus @pope

    Doğru bilinen yanlış bir bilgi söylediğiniz. CPU'da aynı komut setini kullanan cihazlar arasında karşılaştırma yapmak çok yanlış değil. İnternetten biri böyle bir test yapmış zamanında. Windows ve OS X arasında yapmış testi ve arada fark yok doğal olarak. %5 falan fark oluşabilir ama daha fazlası zor. CPU ve GPU'yu karıştırmamak lazım.
    http://browser.geekbench.com/geekbench3/compare/24287?baseline=24327

  • Papa Emeritus @pope

    @de-tl3 Etkilenmez diyorum hocam bende 😀 Buyrun yukarıya koydum Mac OS ve Windows tarafında fark olmuyor aynı bilgisayarda.

  • Papa Emeritus @pope

    @de-tl3 Bende Operating Systems dersi aldım rahat olun. Apple Bootcamp bir emülatör değil, Apple’ın I/O ve bazı donanımlar için gerekli driver’ları vererek Windows kurulumunu kolaylaştırdığı sistemin pazarlama adı. Bir Mac bilgisayarı Bootcamp ile başlattığınızda %100 native olarak çalışıyor aksi garip olurdu zaten. Windows UEFI desteği aldığından beri BIOS simüle edilmiyor. Sizin mantığınızla Apple Bootcamp’in GPU ile haberleşirken de araya girmesi gerekirdi.

  • Papa Emeritus @pope

    @de-tl3 Yanlış anlaşılma olmuş orda 😀

  • Ahmed Erdoğan #_# @aerdogan17

    daha da basite indirgersek... yolu gören sürücü ile yolu okuyan araç farkı diyebiliriz... apple istiyor ki yolu araç okusun sürücü araca göre gitsin gidebilme sınırlarını sürücü değil araç belirlesin... diğerleri diyor ki al sana yol al sana araç senin ustalığınla bu araç bu yolda gidecek... aslında bu temelde iOS ve android farkını oluşturuyor... iOS tabiyatı gereği uygulamaya OS katmanının denetimi ölçüsünde özgürlük sağlarken donanımın kontorlünü de OS'e veriyor ki uygulama ve donanımı tamamen işletim sistemi yönetsin... bu durum apple'nin aslında yazılım şirketi olmasından kaynaklanıyor bence...