23 Temmuz 2002
Playstation 2 Xbox’a Karşı (Sayfa 2)

Ne yazık ki PC işlemcileri başlangıçta salt statik uygulamalar düşünülerek tasarlanmış ve aradan geçen onca yılda bu yapı pek de gelişmemiş. Sadece işlemciler hızlandıkça bu dar boğaza çare olması için cache’ler büyütülmüş. Yani havuza su veren musluk yavaş akıyor öyleyse havuzu büyük tutalım ki daha geç boşalsın gibi bir mantık. Şimdi PC’nin çalışma döngüsüne bakalım.
3D uygulamalar PC’de nasıl çalışıyor?
Bir 3D sahnenin hazırlanışı sırasında geçilen yolları izleyelim. Öncelikle işlemci kendi çalışma alanı olan L1 ve L2 cache’lerine RAM’de bulunan 3D Motor kodunu yükler. Daha sonra yine RAM’den, çizilen 3D sahneye ait veriler North Bridge üzerinden cache’e akar ve burada işlenerek tekrar ana hafızaya geri döner. Burada oluşturulan bilgi GPU’ya, çizilecek olan sahneyi anlatmaktadır. Ana hafızadan North Bridge’i geçip bu sefer GPU’ya gelen veriler ekran kartı üzerindeki RAM’lere yerleşir. GPU’- nun cache’i olarak çalışan ekran kartı üzerindeki RAM’lerle GPU arasında gidip gelen veriler sonunda frame buffer’dan çıkar ve RAMDAC’da görüntüye çevrilerek monitöre yollanır. Gördüğünüz gibi, 3D bir sahnenin görüntülenmesi için oldukça büyük olan datalar, cache ve RAM’ler arasında BUS adını verdiğimiz veri yollarında mekik dokuyor. Bu yüzden BUS’lardan her hangi birinin yavaş olması ciddi darboğazları beraberinde getiriyor.
3D uygulamlar PS2’de nasıl çalışıyor
PS2’de ise bir North Bridge yok. Bunun yerine Emotion Engine’in üzerinde 10 kanallık bir DMAC (Direct Memory Access Controller/Direkt Hafıza Erişim Kontrolörü) bulunuyor.Aynı anda 10 farklı veri akışına olanak veren bu DMAC on-die yani Emotion Engine chip’i içinde olduğu için tüm birimleri 64-bit ve 128-bit’lik yollarla birbirine bağlıyor. Böylece 3D ssahneyi çizmek için gereken veri, ana sistem hafızasından bir kere alındıktan sonra tamamen Emotion Engine içinde dolaşıyor ve buradan direkt olarak grafik işlemciye yollanıyor. Veriler chip’in dışına çıkmadığı ve DMAC’ın hızlı yollarından geçtiği için veri akış hızında hiçbir sorun olmuyor. Statik ve Dinamik uygulamaların cache ve BUS kullanım farklılıklarında anlattığımız gibi PC işlemcileri ve çalışma mantıkları, veriyollarındaki dar boğaz handikabına sahipler. Ancak bu handikap sadece veriyolu ile sınırlı değil. Dinamik uygulamaların bir özelliği de sürekli olarak aynı işin tekrarlanıp durmasıdır. Mesela bu render işlemi ise veriler sürekli uygulamanın koduna girip çıkar ama hepsine yapılan işlem aynıdır. Statik uygulamalarda ise veri akışında böyle bir paralellik söz konusu değildir. Öyleyse dinamik uygulamalar için hazırlanan SIMD komutlarında bu özellik kullanılarak işlemler hızlandırılabilir. Aşağıdaki grafikte Pentium III’de kullanılan SIMD komutları ile Emotion Engine’deki 128 bit’lik SIMD komutlarının çalışma mantığındaki farkı görebilirsiniz. Dinamik uygulamaların tekrarcılığı kullanıldığında tek seferde bir SIMD kullanarak biden fazla iş yapmak mümkün olabiliyor.
Vektör üniteleri nedir ve nasıl çalışır?
PS2 kullanırken değinmemiz gereken ikinci bir önemli nokta vektör üniteleri elbette. PS2’de iki tane olan vektör ünitelerini, kabaca ek veya yardımcı işlemciler olarak ifade edebiliriz. Yapıları, bir noktaya kadar, ana işlemciye benziyor. Onlar da FMAC ve ALU gibi birimlere sahipler. PS2’de ki vektör ünitelerinin isimleri VU0 ve VU1. Bu her iki birim de yapı olarak bir birinin benzeri. Ancak işlevleri bir birinden farklı. VU0 genelde işlemciye eşlik ediyor ve yardımcı işlemcilere özel komut setleri kullanıyor. CPU üzerinde VUO ünitesini kontrol eden özel bir bölüm ve VUO’yu CPU’ya bağlayan kendine has 128 bit’lik hızlı bir bağlantı var. Ayrıca bu iki bileşen arasında SPRAM (Scratch Pad RAM) adı verilen 16 K’lık özel bir cache var. Oldukça hızlı bir hafıza olan SPRAM’i CPU ve VUO’nun ortak çalışma alanı olarak görebilirsiniz. Bu ortak çalışma alanı ve 128 bit’lik özel BUS sayesinde iki bileşen tek bir birimmişçesine çalışabiliyor. Ayrıca bunlara yine CPU’ya özel bir 128 bit’lik bağlantıya sahip olan FPU birimi ekleniyor.Bilgisayarlarda karşımıza çıkan standart FPU’lardan bir farkı yok bu birimin. Kayan nokta işlemlerini üstleniyor, ancak yine kayan nokta hesaplaması yapabilen VU0 yanında oldukça zayıf. VU1 genelde geometri işlemeyle meşgul oluyor. Dediğimiz gibi mikromimari olarak her iki vektör ünitesi de benzer. Ancak buna rağmen VU1,VU0’dan daha güçlü. Bunun bir sebebi de veri ve komut setlerinin her ikisinin de 16K, yani VU0’ın iki katı olması. İkincisi ise VU0’ın yardımcı işlemci modundayken sahip olduğu bileşenlerin hepsini kullanmaması. Ayrıca VU1 üzerinde fazladan bir FPU birimi var. VU1 işlemciye direkt olarak bağlı değil. VUO ile arasında 64 bit’lik özel bir bağlantı var, ayrıca temel BUS olan DMAC üzerinden veri transferi yapabiliyorlar. Ancak VU1, Emotion Engine’de verilerin son olarak işlenip grafik işlemciye yollandığı birim olan GIF’e 3 ayrı 128 bit’lik bağlantıya sahip. VU1’in fonksiyonu programcının tercihine göre değişebiliyor. Ancak genelde iki seçenek ağır basıyor. Bunlardan ilki, daha zayıf ikinci bir işlemci gibi çalışmak. Yani CPU+VU0 ikilisinin yaptığı işin aynısını tek başına yapıyor ancak daha yavaş çalışıyor. İkinci seçenek ile 3D render organizasyonunda CPU+VU0 ile iş birliği yapmak. Bu durumda ise VU1, genelde Transform& Lightning birimi olarak görev alıyor. Böylece PS2 bir GPU’ya sahip olamama açığını kapatmış oluyor.
PS2’nin programlamasındaki zorluklar
Hem VU0, hem VU1 için ortak olan nokta, her ikisinin de esnek yapıya sahip olması. Mesela PS2’nin grafik işlemcisi tek dönümde birden fazla doku işleme özelliğine sahip değil.
3D uygulamalar PC’de nasıl çalışıyor?
Bir 3D sahnenin hazırlanışı sırasında geçilen yolları izleyelim. Öncelikle işlemci kendi çalışma alanı olan L1 ve L2 cache’lerine RAM’de bulunan 3D Motor kodunu yükler. Daha sonra yine RAM’den, çizilen 3D sahneye ait veriler North Bridge üzerinden cache’e akar ve burada işlenerek tekrar ana hafızaya geri döner. Burada oluşturulan bilgi GPU’ya, çizilecek olan sahneyi anlatmaktadır. Ana hafızadan North Bridge’i geçip bu sefer GPU’ya gelen veriler ekran kartı üzerindeki RAM’lere yerleşir. GPU’- nun cache’i olarak çalışan ekran kartı üzerindeki RAM’lerle GPU arasında gidip gelen veriler sonunda frame buffer’dan çıkar ve RAMDAC’da görüntüye çevrilerek monitöre yollanır. Gördüğünüz gibi, 3D bir sahnenin görüntülenmesi için oldukça büyük olan datalar, cache ve RAM’ler arasında BUS adını verdiğimiz veri yollarında mekik dokuyor. Bu yüzden BUS’lardan her hangi birinin yavaş olması ciddi darboğazları beraberinde getiriyor.
3D uygulamlar PS2’de nasıl çalışıyor
PS2’de ise bir North Bridge yok. Bunun yerine Emotion Engine’in üzerinde 10 kanallık bir DMAC (Direct Memory Access Controller/Direkt Hafıza Erişim Kontrolörü) bulunuyor.Aynı anda 10 farklı veri akışına olanak veren bu DMAC on-die yani Emotion Engine chip’i içinde olduğu için tüm birimleri 64-bit ve 128-bit’lik yollarla birbirine bağlıyor. Böylece 3D ssahneyi çizmek için gereken veri, ana sistem hafızasından bir kere alındıktan sonra tamamen Emotion Engine içinde dolaşıyor ve buradan direkt olarak grafik işlemciye yollanıyor. Veriler chip’in dışına çıkmadığı ve DMAC’ın hızlı yollarından geçtiği için veri akış hızında hiçbir sorun olmuyor. Statik ve Dinamik uygulamaların cache ve BUS kullanım farklılıklarında anlattığımız gibi PC işlemcileri ve çalışma mantıkları, veriyollarındaki dar boğaz handikabına sahipler. Ancak bu handikap sadece veriyolu ile sınırlı değil. Dinamik uygulamaların bir özelliği de sürekli olarak aynı işin tekrarlanıp durmasıdır. Mesela bu render işlemi ise veriler sürekli uygulamanın koduna girip çıkar ama hepsine yapılan işlem aynıdır. Statik uygulamalarda ise veri akışında böyle bir paralellik söz konusu değildir. Öyleyse dinamik uygulamalar için hazırlanan SIMD komutlarında bu özellik kullanılarak işlemler hızlandırılabilir. Aşağıdaki grafikte Pentium III’de kullanılan SIMD komutları ile Emotion Engine’deki 128 bit’lik SIMD komutlarının çalışma mantığındaki farkı görebilirsiniz. Dinamik uygulamaların tekrarcılığı kullanıldığında tek seferde bir SIMD kullanarak biden fazla iş yapmak mümkün olabiliyor.
Vektör üniteleri nedir ve nasıl çalışır?
PS2 kullanırken değinmemiz gereken ikinci bir önemli nokta vektör üniteleri elbette. PS2’de iki tane olan vektör ünitelerini, kabaca ek veya yardımcı işlemciler olarak ifade edebiliriz. Yapıları, bir noktaya kadar, ana işlemciye benziyor. Onlar da FMAC ve ALU gibi birimlere sahipler. PS2’de ki vektör ünitelerinin isimleri VU0 ve VU1. Bu her iki birim de yapı olarak bir birinin benzeri. Ancak işlevleri bir birinden farklı. VU0 genelde işlemciye eşlik ediyor ve yardımcı işlemcilere özel komut setleri kullanıyor. CPU üzerinde VUO ünitesini kontrol eden özel bir bölüm ve VUO’yu CPU’ya bağlayan kendine has 128 bit’lik hızlı bir bağlantı var. Ayrıca bu iki bileşen arasında SPRAM (Scratch Pad RAM) adı verilen 16 K’lık özel bir cache var. Oldukça hızlı bir hafıza olan SPRAM’i CPU ve VUO’nun ortak çalışma alanı olarak görebilirsiniz. Bu ortak çalışma alanı ve 128 bit’lik özel BUS sayesinde iki bileşen tek bir birimmişçesine çalışabiliyor. Ayrıca bunlara yine CPU’ya özel bir 128 bit’lik bağlantıya sahip olan FPU birimi ekleniyor.Bilgisayarlarda karşımıza çıkan standart FPU’lardan bir farkı yok bu birimin. Kayan nokta işlemlerini üstleniyor, ancak yine kayan nokta hesaplaması yapabilen VU0 yanında oldukça zayıf. VU1 genelde geometri işlemeyle meşgul oluyor. Dediğimiz gibi mikromimari olarak her iki vektör ünitesi de benzer. Ancak buna rağmen VU1,VU0’dan daha güçlü. Bunun bir sebebi de veri ve komut setlerinin her ikisinin de 16K, yani VU0’ın iki katı olması. İkincisi ise VU0’ın yardımcı işlemci modundayken sahip olduğu bileşenlerin hepsini kullanmaması. Ayrıca VU1 üzerinde fazladan bir FPU birimi var. VU1 işlemciye direkt olarak bağlı değil. VUO ile arasında 64 bit’lik özel bir bağlantı var, ayrıca temel BUS olan DMAC üzerinden veri transferi yapabiliyorlar. Ancak VU1, Emotion Engine’de verilerin son olarak işlenip grafik işlemciye yollandığı birim olan GIF’e 3 ayrı 128 bit’lik bağlantıya sahip. VU1’in fonksiyonu programcının tercihine göre değişebiliyor. Ancak genelde iki seçenek ağır basıyor. Bunlardan ilki, daha zayıf ikinci bir işlemci gibi çalışmak. Yani CPU+VU0 ikilisinin yaptığı işin aynısını tek başına yapıyor ancak daha yavaş çalışıyor. İkinci seçenek ile 3D render organizasyonunda CPU+VU0 ile iş birliği yapmak. Bu durumda ise VU1, genelde Transform& Lightning birimi olarak görev alıyor. Böylece PS2 bir GPU’ya sahip olamama açığını kapatmış oluyor.
PS2’nin programlamasındaki zorluklar
Hem VU0, hem VU1 için ortak olan nokta, her ikisinin de esnek yapıya sahip olması. Mesela PS2’nin grafik işlemcisi tek dönümde birden fazla doku işleme özelliğine sahip değil.
Sonraki Sayfada:
Oyla:
En Düşük
En Yüksek
Lütfen bu bölüme sadece yorumlarınızı yazın. Teknik yardıma ihtiyaç duyduğunuz konuları lütfen forumda ilgili bölüme veya Uzmanına Sorun bölümümüze yazın, yanıtınızı çok daha sağlıklı ve hızlı olarak alabilirsiniz
YORUM ve TARTIŞMA
CHIP ONLINE UYGULAMALARI
İlginizi Çekebilir
İlişkili diğer video, haber, ürün ve galeriler
- Haber: Crysis 3 ayda 1 milyondan çok sattı!
- Haber: LEVEL'dan bu ay herkese FlatOut hediye!
- Haber: Tomb Raider: Underworld piyasada
- Haber: Spore, Creepy & Cute Parts ile daha eğlenceli
- Haber: CHIP Online Vista Sidebar 2.0
- Haber: CHIP Online RSS değişiyor
- Haber: Mars robotu Phoenix'in sesi soluğu kesildi
- Haber: Windows 7 makalesi
- Haber: Bilişim 500 Araştırması'nın sonuçları geldi!
- Haber: Mozilla ofisinden rekor denemeleri
CHIP Online'da Bugün
Son Eklenen Haberler ve Makaleler
- Nokia: Yeni dokunmatik cep mi geliyor?
- IE ve Windows'a kötü, Firefox'a iyi haber
- Son internet hurafesi yine panik yarattı
- Sony'ye büyük ceza darbesi
- 4 alakasız fonksiyonu bir araya getiren cihaz
- Apple'a mektup yazdı, yazılımı kaptı!
- Dosyalarınızı gerçekten yönetin
- LEVEL'dan bu ay herkese FlatOut hediye!
- NVIDIA'dan kırılması güç hız rekoru!
- Intel'den netbook'larla ilgili samimi itiraf
Günün Tam Sürüm Programı
Her gün tam sürüm bir yazılım
CHIP Online ve GiveAwayOfTheDay işbirliği ile, her gün ücretsiz bir tam sürüm yazılımınız var! Bugünün ücretsiz tam sürüm yazılımını indirmek için aşağıdaki Hemen İndirin'e tıklayın.
CHIP Online-Galeri
Galeriler, Ürünler ve Duvarkağıtları
Birbirinden güzel 50 farklı Photoshop harikası
CHIP Online, sizler için 50 farklı Photoshop harikasını bir araya getirdi.
CHIP Online-Video
|
|
Uzay Yolu'nun geçmişi çözülüyor Kaptan Kirk ve Spock'un geçmişlerini anlatan yeni Star Trek yeni fragmanı ile karşınızda... |
En Çok Okunan Haberler
Bu haftanın en çok okunan haberleri
- 1Terminator 4: Dijital afiş göreni büyülüyor!
- 2YouTube'un yeni formatına tepkiler büyüyor!
- 3Anti-virüsler sisteminizi ne kadar zorluyor?
- 4İnternet ücretlerinde küçük ama önemli adım
- 53G ihalesi sonuçlandı...
- 6Mozilla'dan Çin'e özel bir Firefox
- 7Namlunun ucundaki oyunlar
- 8Güvenlik nedeniyle USB bellek yasağı!
- 9Bu şehirlerde navigasyona bile güvenmeyin
- 10YouTube artık eskisi gibi görünmeyecek!
En Çok Okunan Makaleler
Bu haftanın en çok okunan makaleleri
- 1Çok gizli: En iyi cep telefonu kodları
- 2TOP 10: En iyi cepler kapışıyor
- 3Birbirinden kullanışlı 20 internet portalı
- 4CHIP Online'dan sistem güvenliği dersleri - 1
- 5Birbirinden güzel 3.000 simge bir arada
- 6Bunları da kopyaladılar!
- 72009 model güvenlik paketleri mercek altında
- 8Vista'nın sanal klasör yapısını açığa çıkarın
- 9Hafızalardan silinmeyen 10 PC reklamı
- 10Ücretsiz 25 farklı dosya sunucusu
Okur Haberleri
Üyelerimizin gönderdiği Teknoloji Haberleri
CHIP Dergisi: Aralık 2008
















