Teknoloji ve Hayata dair günceler

Son Yazılar


Kategoriler


Son Yorumlar..


CPU, GPU Tamam Ama TPU Nedir?

Kemal İKİZOĞLUKemal İKİZOĞLU

Herkese merhaba,

Bugünkü yazımda sizlerle teknolojideki bildiğimiz bazı terimleri hatırlayıp bazı yeni terimleri de keşfediyor olacağız. Yıllardır teknolojiyle haşır neşir olsak da birkaç yıldır gelişen yeni teknolojiler ve bunların nitelendiği sözcükleri ilk başta anlamak ve anlamlandırmak zor olabilir. Bu konuyu aydınlatmak adına hadi başlayalım.

CPU – Central Process Unit – Merkezi İşlemci Birimi

Bir bilgisayara sahip olduktan sonra adını mıh gibi aklımıza kazıdığımız, üzerinde kıyaslamalar yaptığımız bilgisayarımızda gerçekleşen tüm komut ve sinyalleri işleyip ilgili birimlere dağıtan parçadır. O kadar önemlidir ki her şey ondan sorulur. Günümüzde bilgisayarlar için işlemci üreten İntel ve AMD olmak üzere iki farklı şirket bulunmaktadır.

İşlemcinin yaptığı işi biraz daha özetlemek istersek bilgisayarın donanımlarını gözden geçirelim. Klavye, fare bilgisayarın en önemli iki giriş cihazlarındandır. Bu donanımları kullanarak biz bilgisayara veri girişi yaparız. Klavyeyi kullanarak harf, sayı veya sembol girişinde bulunuruz. Tuşa bastığımızda bu tuşa dair komut işlemci üzerinden geçer ve anlam kazanarak çıktı birimine ulaşır. Bu sayede çıktı donanımları ile sonucu görüntüleriz.

İşlemcinin iç kısmı sahip olduğu teknolojilere göre milyonlarca micro boyutta transistörden oluşmaktadır. Bu transistörler kendi aralarında belirli iş bölümüne sahip olup iş akış süreçlerini kolaylaştırmaya çalışmaktadırlar.

Performans gerektirmeyen temel işlerinizi gerçekleştirecek bir bilgisayara sahip olduğunuzda tek başına işlemci gücü sizin işlerinizi hızlı bir şekilde yapmanıza destek olacaktır. Fakat işin içerisine görüntü, görsel, video, resim gibi dosyalar girdiğinde tek başına işlemci yetersiz geliyor olacaktır.

GPU – Graphic Process Unit – Görüntü İşleme Birimi

Bilgisayarın görüntüleri işleyebildiği, daha akıcı ve yüksek performansta görüntülemesine olanak sağladığı, oyunları kasmadan açıp ultra ayarlarda oynayabilmenize yardımcı olan birimdir. Bu birim işlemci gibi direk anakartın üzerine entegre değildir. Ayrı bir kart üzerine konumlanmış, böylelikle anakartla iletişim halinde olmaktadır.

Ekran kartını bilgisayarınıza bağladığınızda sahip olduğu performansı kullanıma ihtiyaç duyulacak uygulama açıldığında ortaya çıkacaktır. Normal akışta ana akış yine işlemci üzerinde olacaktır.

Peki o halde hem merkezi işlem birimi hem de grafik işlem birimi var. İkisinin farkı nedir diye sorduğunuzu, içinizden geçirdiğinizi hissediyorum. Gelin bakalım.

İşlemciler üzerine konuşurken 8 çekirdekli, 16 çekirdekli işlemci gibi özelliklerini saydığımız durumlarla karşılaşmışızdır. Şahsen İntel’in i3 – i5 – i7 serisi işlemcileri çıkarttığı zamanlarda bir i7 işlemciye sahip olmak herkesin hayaliydi. Günümüzde 14.nesil i7 işlemci içerisinde 20 çekirdek bulunmaktadır. Fakat bir ekran kartına baktığımızda ise buradaki işlemci çekirdek sayısı 10.000’i bulabilmektedir. Aralarındaki en önemli fark CPU düşük gecikme, GPU ise yüksek verime odaklanmıştır.

Her yeni nesil NVIDIA GPU’lar daha güçlü çekirdeklerle birlikte gelir. Şirketin en yeni amiral gemisi GPU’su GeForce RTX 4090, 16.384 CUDA çekirdeğine sahip. Bu önceki nesle göre neredeyse %40’lık bir artış. Bu çok büyük bir sayı kırma gücü!

https://acecloud.ai/resources/blog/nvidia-cuda-cores-explained/

Daha yüksek verim, paralel işlemleri gerçekleştirebilecek çok fazla çekirdek ekran kartlarını daha önemli hale getirmiştir.

TPU – Tensor Processing Unit – Tensor İşleme Birimi

Tensör İşleme Birimi ( TPU ), Google’ın kendi TensorFlow yazılımını kullanarak sinir ağı makine öğrenimi için Google tarafından geliştirilen bir AI hızlandırıcı uygulamaya özel entegre devredir.

TPU’lar, GPU’ların aksine, sinir ağı eğitiminde matris çarpımları gibi işlemlerle başa çıkmak için özel olarak tasarlandı. Google TPU’lara iki biçimde erişilebilir: Cloud TPU ve uç TPU. Cloud TPU’lara, kullanıcılara Google’ın veri merkezlerinde bulunan TPU bölmeleri sağlayan Google Colab üzerinden erişilebilir. Edge TPU ise belirli uygulamalar oluşturmak için kullanılabilen, özel olarak oluşturulmuş bir geliştirme kitidir. Peki tensör nedir? 

Tensör nedir?

Tensörler çok boyutlu diziler veya matrislerdir. Tensörler, bir sinir ağındaki bir düğümün ağırlıkları gibi veri noktalarını satır ve sütun formatında tutabilen temel birimlerdir. Toplama, öğe bazında çarpma ve matris çarpımı dahil olmak üzere temel matematik işlemleri tensörler üzerinde gerçekleştirilir.

Google, 2015 yılında TPU’ları şirket içinde kullanmaya başladı ve 2018’de hem bulut altyapısının bir parçası olarak hem de çipin daha küçük bir versiyonunu satışa sunarak bunları üçüncü tarafların kullanımına sundu.

Norman Jouppi’ye göre TPU, bir veri merkezi rafındaki sabit sürücü yuvasına sığabilecek bir ısı emici düzeneğine monte edilmiştir. Farklı işlemci türleri, farklı makine öğrenimi modelleri için uygundur. TPU’lar CNN’ler için çok uygundur ; GPU’lar bazı tam bağlantılı sinir ağları için avantajlara sahiptir ve CPU’lar RNN’ler için avantajlara sahip olabilir .  

TPU’lar nerede kullanıldı?

CPU – GPU – TPU Birim Kıyaslamaları

Donanım Üreticileri:

Merkezi İşlem Birimi (CPU): Intel, AMD, Qualcomm, NVIDIA, IBM, Samsung, Hewlett-Packard, VIA, Atmel ve diğerleri

Grafik İşleme Birimi (GPU): NVIDIA, AMD, Broadcom Limited, Imagination Technologies (PowerVR)

Tensör İşleme Birimi (TPU): Google

Verim Farkları:

Karşılaştırma olarak şu noktaları göz önünde bulundurmalıyız:

Amaç:

Kullanım Amacı:

Özetle

Bireysel kullanıcılardan itibaren işlem gücü olarak kullanmaya başladığımız işlemciler yani merkezi işlem birimi, işlenen verilerin büyüklüğü ve kalitesi zaman içerisinde değiştikçe çözüm olabilecek teknolojilerle desteklenmiş.

Günümüzde blok zinciri teknolojisine kadar olan süreci düşündüğümüzde hala işlemcilerin performansıyla bunu başarabileceğimizi görüyorduk. Fakat grafik kartlarının çekirdek sayılarının fazla olmasından kaynaklı veri işleme ve problemleri daha hızlı çözebilme yeteneği kullanılarak blok zinciri teknolojisinde inanılmaz bir ilerleme gözlendi. Her ne kadar blok zincirinde ekran kartları büyük öneme sahip olsa da büyük veriyi işlemek ve yapay sinir ağlarının eğitilmesinde kullanılan Google tarafından geliştirilmiş TPU birimleri kapladığı yer ve harcadığı enerji bakımından oldukça iyi performans gösterdiğini söyleyebiliriz.

Her birimin kendi içerisinde amacına özgü özellikleri bulunmaktadır. Bilhassa makine ve derin öğrenmeye dair işleme sürecine dair yapacağınız geliştirmelerde bulut tabanlı TPU hizmetini kullanmak size oldukça zaman kazandıracaktır.

Daha önce Google Colab üzerine yazdığım yazımı henüz okumadıysanız şuradan ulaşabilir, TPU birim özelliğine sahip Google Colab detaylarını gözden geçirebilirsiniz.

Bir sonraki yazımda görüşmek dileğiyle..
Hoşça kalın.

Kaynaklar:

https://analyticsindiamag.com/tpu-beginners-guide-google/
https://discourse.opengenus.org/t/graphics-processing-unit-gpu-vs-tensor-processing-unit-tpu-vs-field-programmable-gate-arrays-fpga/2087
https://en.wikipedia.org/wiki/Tensor_Processing_Unit
https://en.wikipedia.org/wiki/AI_accelerator
https://iq.opengenus.org/cpu-vs-gpu-vs-tpu/
https://www.technopat.net/2021/02/01/cpu-tpu-qpu-nedir

Eğitim ve teknoloji haberlerini, ilginç ve önemli bilgileri, kendimi geliştirdiğim alanlardaki öğrendiğim tecrübelerimi blogumda paylaşıyorum. Öğrenmekten ve paylaşmaktan zevk alıyorum.İnandığım bir şey var ki istisnalar hariç, hiçbir şey imkansız değildir. Mucizeler için zaman gerekir! Bu benim yaşam felsefem.

Yorumlar 0
İlk yorumu yazmak ister misin?