|
Bildirim
|
Saf işlemci gücü biraz değişken bir konu. Nasıl kullandığınıza göre tamamen farklılık gösterebilir. Mesela az çekirdek ve aynı kod içi paralel çalışmaya uygun programlarda daha güçlü çekirdeğe sahip inteller epey öndedir. Kabataşlak 3/2 diyebiliriz. HT da uygun kod yazılırsa buna katkı yapar. HT perf için paralel çalışacak komutlar aynı taska ve kod segmentine ait olmalıdır.
AMD işlemciler ise çok çekirdek ve küme birleşimli paralel kodlarda (aynı kod içi veya segmenti olması da gerekmez) öndedir. Bu da AMD FX serisindeki modül yapısının sonucudur. Intellerde mantık güçlü çekirdek, gerekirse gücü bölerek (HT) kullanmaktır. AMD ise tersidir, zayıf çekirdek ile gerekirse modüldeki iki çekirdeği birleştirip güçlü tek çekirdek gibi kullanmaktır. Ancak yine kod desteği sorunu yüzünden bu iş te pek kullanılmadı ve FX serisinin zayıf karnı oldu. Oysa HT en iyi durumda %15-25 katkı yapabilir ki intel çekirdekleriri 100 gücünde alsak 4*(100+20)=480 gibi bir skor verir diyelim en iyi durumda. AMD için ise çekirdek gücünü 3/2 kabul ettiğimizde 8*66=528 gibi bir sonuç elde ederiz kabataslak. Düz mantıkla bakarsak AMD güçlü dememiz lazım ama hatalı olur. Zira durum bu kadar basit değil. Tamsayı işlemlerinde bu güç farkı teorik olarak AMD lehine olsa da gerçekte değil. Ayrıca olayın FPU tarafı farklı. FX serisi 8*128 bit kayan nokta kullanabilirken I5-I7 serisi 8*256 bit kullanabiliyor. Bu durum özellikle Matlab vb ağır kayan nokta hesabı yapılan işlerde inteli öne geçiriyor. Yine photoshop-video encode gibi yoğun paketli aritmetik kullanan uygulamalarda da böyle. AMD FX8 serisi teorik olarak aynı anda 8*4*32 bit paket işleyebilirken I5-I7 serisi 8*8*32 bit paket işleyebiliyor 128 yerine 256 bit yazmaçlar nedeni ile. Bu da FPU ağırlıklı uygulamalarda %40-60 arası bir fark yaratıyor intel lehine. Tamsayıda ise sorun modül yapısında. Teorik olarak 8 FX çekirdeği 4 I5-I7 çekirdeğinin iki katı tamsayı komutu işleyebilir. Tamsayı komutları genelde 1-2 çevrim süren kısa komutlar olduğundan Intel HT birimi burada işe pek yaramaz. AMD ise teorik olan iki kat komutu maalesef kullanamaz tasarım hatası (daha çok kod desteği diyelim) yüzünden. Zira bir modülde iki çekirdek vardır ama tek komut sıralayıcı bulunmakta, yani iki çekirdek ortak tek kanaldan beslenmektedir. Bu durum özellikle 1 çevrim süren toplama-çıkarma-lojik-karşılaştırma-bit işlemlerinde darboğaz oluşturmaktadır. Zira komut sıralayıcı tek çevrim bir tamsayı komutunu modüldeki bir çekirdeğe sürünce diğer çekirdek boş kalmaktadır. Tek çevrimde biten komut nedeniyle sonraki adımlarda da aynısı olmakta, modüldeki bir çekirdek atıl kalmaktadır. Ancak 2 ve daha fazla süren komutlarda sıralayıcı her iki çekirdeği besleyebilmektedir. Ancak tamsayı komutlarının üçte ikisinden fazlası tek çevrimdir. Bu da modüldeki çekirdeklerin beslenememesine neden olarak, teorik 2 kat tamsayı performansını ancak üçte bir seviyelerinde üstünlüğe düşürmektedir. Bu tasarım (kod) sorunu bolldozer ve piledriver serisi güncel tüm FX işlemcileri için geçerlidir. Bunun çözeme intellerdeki kod içi çift hat paralel yürütme yerine küme birleşimli paralel kod yürütmedir. Ancak daha önce andığımız kod desteği sorunu nedeni ile bu durum çok az uygulamada karşımıza çıkmaktadır ki onlar da normal kullanıcının pek işinin olmadığı extrem pro uygulamalardır genelde. Yine modüldeki 3/2 gücündeki iki çekirdeği tek çekirdek gibi kullanıp intellere 4/3 üstünlük kurma işi de yatmıştır. Zira çok çekirdek kullanarak kod yazmak modül kullanmaktan çok daha kolaydır. Bu nedenle modül kabul görmemiştir, ciddi uygulamalar çok ekirdeğe yönelmiştir. Esasında zayıf ve çok çekirdeğe kod yazmak güçlü az çekirdeğe kod yazmaktan her zaman daha kolaydır, daha az optimizasyon gerekir, paralellik fazla, kod bağımlılığı azdır, uygulama alanı daha geniştir. Bu durumda sonuç çok farklı olmaktadır. FPU ağırlıklı ve güçlü çekirdeğe odaklı kodlar ile çok çekirdek desteği olmayan kodlarda FX8 serisi anca I5 serisini rakibidir. Mesela kod en fazal 4 çekirdek kullanıyorsa FX8 ile FX4 arasında fark olmaz, FX8 serisini yarısı boş yatar. I5-I7 ise tam güçle çalışabilir. Günlük kullanım-oyunlar-video-resim işleme gibi konularda I5 serisi FX8 serisinin aşağı yukarı dengi veya FPU kullanımına göre biraz üstüdür. Ancak çok çekirdek destekli uygulamalarda durum farklıdır. CAD/CAM, render, database, sanallaştırma, akış işlemleri gibi çok çekirdek ve tamsayı ağırlıklı işlerde ise FX8 serisi I7 serisinin dengi veya biraz üstü duruma gelir koda göre. (2011 serisi 6 çekirdek I7 serisi hariçtir, burada AMD bir şey vermiyor) Komut setleri ise bunun tuzu biberidir. Esas sorun ise AMD işlemcilerinde bulunan ve performansı çok artıran ama intellerde olmayan setleri kullanan çok az uygulama olmasıdır. AMD işlemcilerin gücünü kullanamıyoruz normal kullanımda çoğu zaman. Mesela A10-6800K işlemci mi I7-4770K mı daha iyidir desem millet güler herhalde. Normalde işlemci iç yapıları ve komut setlerini bilmesem ben de gülerdim. Ama kazın ayağı öyle değil. Zira normal kullanımda aca FX-6100 seviyesinde güç veren A10-6800K işlemci anca I3 ve alt seviye I5 işlemcilerini geçebilir. Nerde kaldı 4770K. normalde 2,5-3 kat fark yer. Çoğunluk da bunu bilir. Oyna A10-6800K işlemciyi intellerde olmayan CVT-XOP-FMA-*BM komut setlerini kullanarak aynı işi yaptırsak birbirine denk çıkarlar. Zira bu setler tam da AMD işlemcilerin zayıf kaldığı alanları doldurmak için tasarlanmıştır. Örneğin modifiye edilmiş komut tam seti ile yapılan render testinde 6800K ile 4770K test edilmişti ve denkliği görülmüştü. Üzerine de 6800K tüm setler ve içindeki I7 serisindekinden çok daha güçlü GPU birimi OpenCL ile kullanılarak test yapılmış ve 6800K işlemci 4770K işlemciye 2,5 kat kadar fark atmıştı. Şimdi ne diyeceğiz, normalde 2,5 kat fark atan I7 mi güçlü, tam güçle tüm yetenekleri kullanılınca 2,5 kat fark atan A10 mu güçlü. Testse test, hesap-kitapsa hesap kitap. Hadi karar verelim bakalım. Özetle bench değerleri %100 kesin fikir vermez. Bir testte iyi olan işlemci başka testte kötü çıkabilir. Önemli olan yapılacak işe ve daha da önemlisi kullanılacak uygulamaya-koda göre karar vermektir. Önceliğinizi doğru belirleyip ona uyan işlemci seçmektir. Yani desek ki renault mu hızlı ferrari mi ? Millet biryerleriyle güler ilk başta. Ama ferraride kazma kazım, renaultta Vettel sürücü ise ferrari geçer diye %100 emin olabilir miyiz ? İşlemci-program durumu da böyledir, işlemci araçsa sürücüsü uygulamadır. Kod işlemci gücünü kullanamıyorsa işlemcinin gücü önemini yitirir. Şimdi 4770K ile 16 bit kod kullansak 32 bit kod kullanacağımız 8350 işlemciyi geçebilir mi gibi bir sonuç ortaya çıkar. Herhalde dediğim anlaşılmıştır. İşlemci teste göre seçilmez, kullanacağın uygulamalara göre, kullanma amacına göre seçilir. Mantıklı olan budur. Ben olsam ne seçerdim; Basit günlük kullanım, ofis, internet, müzik-video ile az oyun vb için A8-A10 serisi APU: Günlük kullanım-ortalama oyun vb için FX6300 gibi bir işlemci veya I5 serisinin orta seviyeleri. Biraz daha iyi oyun için FX-8 veya I5 serisinin üst modelleri. Üst uç oyun seviyeleri için I7 serisi. Pro olmayan video-resim-matlab vb için I5 üst seviyeleri. Biraz daha ciddi ise I7 serisi. Pro olmayan veya ciddi CAD/CAM, render, sanallaştırma, akış işlemleri, DB, indexleme vb işler için FX-8320+ üst seviye işlemciler. Pro-yarı pro ama çok da fazla ciddi olmayan işler için bütçeye göre mümkünse 2011 soket I7 serileri. Pro işlerin dibi için ise XEON-Opteron serisi. |
|
< Bu mesaj bu kişi tarafından değiştirildi OnTEC -- 22 Mayıs 2014; 17:28:42 > |
< Bu mesaj bu kişi tarafından değiştirildi melikulupinar -- 24 Mayıs 2014; 1:42:58 > |
< Bu mesaj bu kişi tarafından değiştirildi melikulupinar -- 24 Mayıs 2014; 1:33:27 > |
< Bu ileti mobil sürüm kullanılarak atıldı > |
|
< Bu ileti tablet sürüm kullanılarak atıldı > |
|
|
|
Eyvallah, teşekkürler. |