Çoklu Çekirdek Tasarımı - Sports Car
.

Çoklu Çekirdek Tasarımı

| Saturday, January 19, 2008


Çoklu çekirdek tasarımının ilk göze çarpan avantajı elbette aynı anda birden fazla işlem yapabilme kapasitesi oluyor. Fakat bu tip bir avantaj asıl hızını, aynı zar üzerinde iki çekirdeğin ayrı ayrı işlemcilerden daha hızlı etkileşmesi ile buluyor. Aynı bellekte işlem yapan çekirdekler böylece belleğin farklı yerlerini kullanarak daha verimli kullanılmasını sağlıyor.

Aynı zar üzerinde iki çekirdek barınmasıyla, silikonun daha verimli kullanılmış oluyor ve kullanılmayan alan küçülüyor.

Öte yandan çoklu çekirdek mimarisindeki bir işlemcinin kullanımı işletim sisteminin becerisinden geçiyor. Zira ilk etapta şu sorun ile karşılaşılıyor: yönergeleri birbirinden bağımsız aynı anda çalıştırmak mümkün mü? Bu sorunun cevabı yönergenin kendisi ile alakalı. Bir yönerge kendinden sonraki yönerge için hesaplama yapıyorsa yani bu iki yönerge birbirine bağlıysa o zaman bu iki yönergeyi aynı anda çalıştırmak imkansız olacaktır. Mesela ocağı yak yemeği pişir gibi iki yönerge bir biri ile bağlıdır. Aynı anda bir thread üzerinden ocağı yakıp diğeri üzerinden yemeği pişiremeyiz. Ama tabii ki bir thread ile ocağı yakıp yemeği pişirirken diğer thread üzerinde salata da yapabiliriz. Bu bağlamda diyebiliriz ki, günümüz oyunları tek çekirdekli mimariye göre yazıldığı için 3 GHz ve tek çekirdekli bir işlemcide 2 GHz ve çift çekirdekli bir işlemciden daha hızlı çalışacaktır. Çünkü birden fazla thread ile çalışacak programlar ona uygun şekilde programlanmalıdır. Bu programlamada da esas olan yukarıda belirtildiği gibi bir yanda yemeği pişirirken bir yandan salata yapmak olmalı. Fakat şu anda bu tip dizayna sahip oyunların sayısı fazla değil. Dolayısıyla bir oyun için işlemci tek bir işlemci durumunda. Yani performans çoğu oyunda saat hızı ile orantılı durumda. Elbette ileride bu tip oyunlar yazılacaktır fakat multithreading destekli program yazmanın maliyeti çok fazla. Zira eklenecek her thread için kod yeniden ele alınmalı. Örneğin Valve'nin çok çekirdekli sistemler için geliştirdiği özel bir oyun motoru bulunmakta.

Üretim açısından ise litografideki gelişmelere rağmen çok çekirdekli bir işlemci üretiminden alınacak sonuç normalden daha az olmakta. Çünkü işlemci üzerinde çizilecek devre oldukça küçük. Sony'nin IBM ile tasarladığı ve Play Station 3 için kullanacğı Cell işlemcisinin üretim sorunu bu. Zira ürettikleri silikon gofretlerden (wafer) çok düşük verim alıyorlar. Çünkü Cell üzerinde 9 çekirdek bulunuyor ve bu kadar ince bir dizayn üretimi oldukça kısırlaştırıyor.

Başka bir dez avantaj ise iki çekirdeğin de aynı veriyolu ve bellek bant genişliğini kullanacak olmasında kaynaklanan verim düşüklüğü. Zira iki çekirdekli bir işlemci tek çekirdekli bir işlemcinin kullanacağı kaynakları aralarında paylaşacaklardır. Fakat tek çekirdekli iki işlemci hem çift çekirdekli işlemcinin yapabileceklerini yapıp hem de bu kaynakları paylaşmadan kullanabilir. Dolayısıyla çoklu çekirdek mimarisi beraberinde yeni anakart dizaynları da getirmelidir.

0 comments:

eXTReMe Tracker