Şimdi Ara

AMD Zen: 32 Çekirdekli EHP APU’su Yolda! (4. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
86
Cevap
4
Favori
3.602
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
1 oy
Öne Çıkar
Sayfa: önceki 12345
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • redoracle R kullanıcısına yanıt
    HPC tarafında Windows neredeyse sıfırdır(belki %2 civarı, onlarda ne maksatla ne yapıyorlarsa). Bu yüzden HPC alanında daha fazla yayılmak MS'nin asıl amacı değil zaten. Ayrıca insanlara reddedemeyecekleri bişeyler sunumalılar ki MS'ye yönelim olsun. Araçları bile kendilerinin yazdığı insan grubuna Ms'nin önerebileceği çok fazla bişey yok, bu yüzden MS ve HPC kelimeleri bi arada kullanılmaz.

    Ms diğer taraftan Cloud / server tarafında yüklü iş / yatırım yapıyor ve fırsatları kovalıyor. Bu taraftan bakınca anca kendi işine yarayacak kadar yatırım yapar destek verir gibime geliyor bana ilk başta.

    Daha önce dediğim gibi insalar az bildikleri konularla ilgili özetin özetinin özetinin özeti diyip 2 kelimeyle söyle AMD'de yazılım var mı yok mu gibi bişeye getiriyorlar. Yanlış bu. Amd'nin bazı eskikleri olsa da, tekrarlarsam AMD GCN ve Open CL'in miladı 2012 civarları neredey, Nvidia Cuda'nın 2006lardan berii olan çabası nerede. AMD ne yaparsa yapsın bi anda biyere gelemez zaten. Zaman lazım. Intel nası geldi? Hem Phi'nin mimarisi x86 olduğu için, hemde port için vs. için fazlaca imkan sunuduğu için. Yukarda yazdığım gibi x86'yı AMD'nin herhangi bi GPU mimarisine port edebilecek bi yapı olsa, AMD'nin de peşine düşerlerdi.

    Ha peki daha önce çok bıdı bıdısını ettin, bu Dx çalışırken driver , oyunun taleplerini alıp dx driverından geçirip, AMD'nin araortam formatı olan AMD_IL'ye dönüştürüyor dedin, dedin. O zaman bi x86 kodunu alıp, benzer şekilde AMD_IL'ye çevirecek, ordan da GPU'ya yollayacak bi yol olamaz mı? Olabilir ama çok uzun karışık içinden çıkması zor derecede uğraşma gerektirir. HSA'nın amaçlarından biri, dolaylı da olsa bu. Sen C ile veya atıyorum Java için CPU temelinde yaptın bi iş. HSA altyapısı bunu HSAiL'ye çevirecek. HSAiL de HSA'nın araortam formatı. HSAiL'e dönüştürülmüş kod, başka hedef platformlarda verimli çalışacak şekilde onların donanım compiler'larına yollanabilir. Buna kavram karmaşası olmasın istersen HSA donanım driverı diyebilirsin.

    Yani :

    HSA uyumlu dil ile geliştirme(veya otomatik olarak HSA altyapısı için derlenirken derleyiciye kolaylık sağlayan programcıyı uğraştırmayan bikaç ilavesi olan ypaı ) ---> derleme --> HSA araortam formatı (HSAIL) -- >> hedef platform için final çıktı üreticisi (Finalizer, donanıma göre çıktı üreten son derleyici)

    HSA altında esas AMD olduğundan, ilk olarak Finalizer denilen yapı doğal olarak da CPU hedef alındığından , CPU'yu hedef alıyor. Yani finalizer'ın yaptığı iş, Java'nın işletim sistemine özel kısmı gibi mesela. PEki o kısmını değiştirip, kodlarken hedef alınmasa bile direk GPU'nun hedef alınmasını ve bi yere kadar optimize edilip GPU için de kabul edilecek verimde çalıştırmasını sağlayabilir misin? Esasında zor uzun ve karmaşık süreç. Ama oyun temelinden gidelim yine, driverdaki otomatik iyileştirme ypaılarına faln bakalım. İşin bu tarafından bakarsak, yeterince uzun süre çalışılmış bi HSAIL yapısı ile, hedef platformlara göre otomatik aktarım bi noktaya kadar olabilir belki.

    Şimdi bunun CPU için compilerların yaptığı otomatik vektörizasyon denilen zımbırtılar dizisnden çok farklı olduğunu olacağını olması gerektiğini de ekliyeylim. Bi i7'yi alıyorsun mesela. GCC ile autovectorization yaptırmak istiyorsun, AVX 'e göre compile et diyorsun. Sonuç? bi mok değişmiyor. Yani gcc gelişmiş bi cpu compilerı olmasına rağmen, sen kodlama esnasında bişeyleri en baştan parallel şekilde kodlamazsan, compiler bunu alıp otomatik olarak AVX / SIMD yapısını kullanacak ve perf arttıracak hale sokamıyor. Öbür taraftan HSA tarafı, bu GCC gibi bi yol değil, dha çok Oyun API'sinin GPU donanımına uyarlanmasına benzer yoldan geçiyor. GCC bi C kodunu alıp sonuçta direk x86 asm'sine çevirmekle yükümlü. HSA ile sen kodu alıp önce bi ara formata çevirip, ara formatı da hedef platforma göre bolca eğip bükme, veya oyun için driver patch'inde otomatik kodun değiştirilmesi gibi imkanlar daha çok olabilir gibi. GCC gibi cpu compilerları zaten benzer şeyleri yaparlar, değişken indirgerler fonksiyon indirgerler, gereksiz işlemleri engeller, işlemleri birleştrirler ve dar kapsamda optimizasyon adına çok akıllıca iş yaparlar. Öbür taraftan oyun kısmında olan şey ise oldukça değişik ve farklı. Oyun tarafında nelerin yapıldığı yapılmak istendiği driver tarafından yakalanıp iyileştrme prosedürlerine başlanabliyor. Oysa genel geçer bi program için bu o kadar kolay olmayabilir. PRogramcının verimsiz bi şekilde yazdığı bellek erişim paterninin mesela düzeltilmey çalışılması tehlikeli sonuçlara, ihlallere yol açabilir. Yine de bi yere kadar yapılabilecekler mümkün olabiir. Çünkü CPU derleyicilerinin aksine önce farklı bi formata çevrilip, o IL/araortam formatını eğip büküp hedef platformda verimli çalıştırmak için bi tık daha fazla imkan var.

    Bunlar, Intel'in CPU kodunu Phi'ye hiçbişey yapmadan aktarmasına faln direk benziyor mu? BAzı açılardan benziyor.

    Peki bu tarz HSA yaklaşımları HPC gibi alnlar dışında daha günlük işlerde kullanılamaz mı? kaç tane C# programcısının yaptığı işler için GPU gücüne ihtyaç duyduğunu ve C# içinde bunu kovaladığını aaraştırın derim. Görece orta karar bi C# programcısının bile GPU'dan verimli şekilde faydalanması, bazı programların çalışması açısından önemi katkılar sunabilir. Özellikle de bu APU tarzı yapılarda olabilirse.

    Bunların hepsi güzel şeyler de AMD nasıl kalkacak altından yada kalkabilecek mi? Lin yada bsd altında çalışan demoları var. Finalizer faln hazırlayabilmişler yani. Bunun windows tarafına gelebilmsei ise sanırım kaynak ve arge personeli sayısına bağlı oalcak.

    İyice dağıtmadan, Ms bi şekilde AMD'yi ele geçirebilmeiş olsa, XB ve oyun tarafı için, server cloud tarafı için öncelikli olarak kullanmak isteyebilir gibime geliyor. Win altında çalışacak bi ton kütüphane bilmemne flan olur mu bilemem o durumda.

    Samsung ele geçirmiş olsa, server alanında kullanabilmek için bolca kaynak ve altyapı aktarması gerekir. Samsung'un olmadığı, AMD'nin ise deneymli olduğu alan server vs. tarafları. Özel bi konsoldan tut artık AMD'ye ne kadar kaynak ayırabilirlerse bilmem, olasılıklar çok olur.

    Ama günün sonunda iş dönüp dolaşıp daha çok hazır yazılım kütüphanesine bakar.

    Daha önce örneğini veridğim elemanlar küçük şirketler var. Bazı işler için deli gibi donanımımız var, niye kimse gelmiyor diyip, aradan yıllar geçtikten sonra cevap yazılım seni ahmak diye kendi kendine laf eden şirketler var.Esas vurucu sorunun bu olduğunu kavradıktan sonra, bi sürü kütüphane peşine düşük işllevselliği kullanılabilme durumu artan çipler firmalar var.

    AMD'nin, birilerinin şirketi ele geçirmesinden sonra mesela 500 tane yazılımcı alıp, mesela GCN'e özel şu şu işler için pratik kullanımı olan kütüphaneler peşine düşmesi biraz hayal olabiir gibime geliyor. Büyük bi ileri görüşllülük olurdu esasında. Senelik 40-60 milyon $'lık ilave bütçe geçirmek de yerine göre kolay yerine göre zor olurdu.




  • Hadi bakalım
  • quote:

    Orijinalden alıntı: Rubisco

    Rakip diyeceğin Nvidia var sadece. Intel ağırdan alır / alıyor. Pentium temelli CPU olduklarından, üstüne AVX eklentili SIMD üniteleri olduğundan, HBM tarzı yapıya göre esas işlem yapan altyapıyı / mimariyi değiştirmek çok çok çok daha zor. Şimdilik sadece bellek arabirimini değiştirecekler. CPU kompleksi bellek kontrol yapısını aynı şimdiki iCore mimarisindeki(SB ve sonrası) gibi ring bus ile ulaşıyor. Bu da genelde verimli bi yapı. En azından CPU içinde, çekirdek dışı yapıyı tanımlayan uncore denilen, çekirdekler arası ve diğer çip içi sistem birimlerini birbirine bağlayan yapı için ring bus anlamlı. SB için çekirdek >> L3 cache arasında toplamda 400GB'dan büyük bi BW taşıyabiliyor ringbus. Phi için bu çok daha geniş ve büyük. Normal şartlarda bi noktaya kadar sorun yok. Ama için içine HBM gibi çok büyük BW sunan yapı girdiğinde, sürekli Çip <<--->> HBM arasında veri transferi gerekecek. Masaüstü için 50GB bile ulaşamadığımızı dikkate alalım. Ekran kartlarında , bellek erişiminin %100 net mimari detaylarını bilmiyorum, yani ram çiplerine nasıl dağıttıklarını bilmiyorum (GDDR5 noktadan noktaya bağlantı olduğundan, mesela 512 bit kart için 8x tane 64bit kontrolcü gerekiyor. yazma istemi için komut gönderildiğinde, bu her bi shader grubunun kendine tahsis edilmiş L2'sine mi yazıyor ve o kısma karşılık gelen bellek kontrolcülerine ve bellek çiplerine mi yazılıyor, yoksa bi yazma kuyruğuna eklenip bütün bellek çiplerine mi dağıtıyor gibi tam detaylarını bilmiyorum). Ama Phi gibi bi yapıda olsa bile, ring bus'ın BW'si ile karşılaştırılabilecek seviyede HBM'nin sağladığı BW var. Bu da çipin HBM ile iletişim sırasında sürekli %100 BW kullanımı olamayabileceği anlamına geliyor olabilir. Yada ring bus'ı devasa boyutlarda BW'ye sahip olacak şekilde tasarlıyor olabilirler. AMD'de olan ilk durum, Intel'in yapmak için uğraştığı da ikincisi olabilir.

    AMD, esas altyapısında değişiklik yapmamış. HBM bi nevi şimdiki GDDR5'lerin yerini almış. Bunun için bellek kontrolcülerinde ne kadarlık farklılık gerekti (yada gerekti mi) vs. detayları belli değil. HBM'ler için tam net latency testi faln yapan da görmedim daha. Bi yerde BW testi yapıp, 390x ile aralarındaki farkın %20 az olduğunu gösteriyordu (gerçekte %33 civarı BW farkı olması lazım. Fury 512GB, 390x 384GB ). ROP hariç herşeyi artınca sanki yetersiz kalmış gibi kabul ediyoruz. HBM'nin, artacak olan ROP'ların getireceği ilave yükleri kaldıramayacağını veya mimarinin buna uymadığını düşünmüş olmalılar. Daha çok ROP rasgele eklenemiyor ve her bi shader Engine 1-16 arası CU, max 4 ROP grubu olacak şekilde organize ediliyor. O zaman Fury'de daha çok ROP olabilmesi için ya Shader ENgine yapısının değişmesi, 1 tane daha fazla Shader Engine içermesi gerekecekti. Fazladan 1 Shader Engine demek +16 ROP demek olacaktı ama +16 CU da demek olacaktı. Yani 4 değil 5 shader engine olacaktı. O zman ilave Geometri / raterizer altyapısı vs. de demek olcaktı. Toplamda 4096 değil 4160 shader, 80 ROP gibi olacaktı. AMD'nin tam CU --> L2 --> Bellek kontrolcü altyapısını bilmiyorum(yukarda bahsettiğim her shader engine'in L2'de kendi payı-kısmı, bunların da aktarıldığı kendi bellk kontrolcüsü olabilir, veya yazma istemleri bi sıraya kuyruğa eklenip bütün bellek çiplerine yazılıyor olabilir). Şu an 290 >> 390x'e kadar olan Hawaii temelindeki 8 bellek kontrolcü yapısını 4 HBM çipine eşleştirmişler. Daha çok Rop için 5. Shader Engine eklenseydi, belki bi uyuşmazlık çıkma ihtimali olabilir. Hani çipin büyümesi vs. dışında, bellek erişim altyapısı yüzünden 8 bellek kontrolcü -->> 4 HBM çipi şeklinde erişim kurulmuş olabilir. Eğer bu varsayım doğru ise, bellek erişimi üstüne yazdığım 2 olasılıktan 1.si doğru olmuş olacak (her Shader Engine'in kendine tahsis edilen L2 alanına veriyi yazması, bellek kontrolcülerin de burdaki veriyi kendi çiplerine yazması. Yani bütün yazma işlemlerinin bi tür global kuyruğa eklenmesi ve bütün çiplere aynı anda yazılması değil. Yani 1. Shader Engine 'den gelen okuma-yazma talepleri mesela 1. ve 2. bellek kontrolcüsüne iletiliyor gibi. Genelde GPU'nun tamamı kabaca aynı anda aynı işin biçok kopyasını çalıştırdığından, 1. Shader Engine ile 4.Shader Engine aynı kodu / okuma yazma talebini işler. Bu sayede de bütün bellek erişimi aynı esas işin okuma yazması gibi olur. Temelde GPU'lar hep bu mantıkla çalışır. 1.Shader Engine'de 1.CU ayrı telden, 2. ayrı telden, 2. Shader Engine'deki Cu'lar farklı işlerle faln uğraşmaz. Nvidia için de bu böyledir ).

    Bunlardan ne sonuç çıkıyor, AMD Shader ENgine altyapısını değiştirmek istememiş, sadece teorik limiti olan 16 CU'ya kadar genişletip bırakmış (1-16CU arası olabiliyor Shader Engine). O zaman da ROP tarafından lmiitleniyorsa(Hawaii'deki 2816 shader + 64ROP'a karşın 4096 shader +64ROP), Shader Engine yapısını değiştirmediklerinden ilave ROP eklenememiş. Belki çipin büyümesi belki ilave tasarım gerekmesi v.s yüzünden 5. Shader Engine de eklenmemiş. Böylece ROP açısından limitleniyorsa kesin olrak arge'den kısıp bırakmış oluyorlar.

    Eğer 5. Shader Engine eklenebilseydi, bu sefer de bellek kontrolcü ile bağlantı sorunu olacakdıysa, bellek erişim altyapısında daha fazla değişim olması gerekecekti, bi nevi asimetrik erişim gerekebilirdi, yada 970'dekine benzer sorun olabilirdi: 5 tane Shader Engine 'i 8 tane bellek kontrolcüyle eşleştirmek gerekecekti. Bunun için, yukarıda varsaydığımız 1 ShaderEngine --> 2 Bellek kontrolcü gibi bi yaklaşım varsa, uymayacaktı. Belki 5GB lık olabilseydi olurdu o zman. Belki o zman da 5. HBM çipinin konumu açısından sorun çıkacaktı. bunlar da arge isteyen sorunlar.

    Alakasız, Nvidia da her bi GPC bir bellek kontrolcü ile ilişkili. Bu yüzden çipi büyütürken, 980 için mesela 4 GPC 4 bellek kontrolcü, sonrasında 5 GPC 5 bellek kontrolcü gibi gidebiliyorlar. Ama 970'deki soruna da yol açıyor bu.

    AMD HBM'yi Hawaii'ye uydurup biraz genişletip rekabetçi bişey çıkartmak istemiş olmalı. Çok az yeniden dizayn var gibi (yani yüksek seviyeli bakınca, yoksa silikon tarafından bakıncan güç yönetimi vs. bi sürü şeyler de var). Yani buna ayağına sıkmış der miyiz bilemiyorum. Argeden kısıp idare etmeye çalışmışlar, hep yaptıkları gibi. Intel de daha büyük ring bus ile idare etmeye çalışacak onun gibi. Ama, mimari tasarımı bu büyük BW'den yararlanacak şekilde değiştirmeyen zararını görecek gibi. Çünkü Çip <<<--->> Bellek çipleri arasında veri transferleri esasında en çok enerji tüketiminin olduğu yerdi. 800 tane shaderın yapacağı hesap sırasında harcanan enerji ile, elde edilen sonucu Dram'a yazmak kabaca benzer seviyelerde enerji tüketir mesela. Bunu, HBM ile sürekli yüksek miktarda BW kullanımı şeklinde ele alırsak, esasında baya artacak bi güç tüketimi sorunu demek bu.

    AMD'Nin bu konunun esası olan sunumda bahsettiği gibi HBM için olan transferler güç bütçetsinin büyük bi kısmını kapsıyor olacak. Bu yüzden hesaplama sisteminde vs. de değişikliklere gidilmesi gerekiyor.

    Nvidia Maxwell'de HBM tarzı bi yapı kullanmayı hem düşünmüyordu, hemde tam yapamazdı diye biliyorum. Yani AMD'nin kim ne yapacak diye bakınmasını gerektirecek bi durum yok esasında. Pascal ile mimari dizayn olarak bu yüksek BW 'li belleklere uygun yapı hazırlıyorlar. Bu yüzden yeni HBM tarzı yapı kullanacak mimarisinde perf çıtasını çok çok yükseğe taşıyacaklar.

    Xeon Phi'ler, accelerator olarak HPC pazarın %30 küsürlük kısmındalar. Yani AMD'yi çoktan geçmiş konumda. AMD'Nin Intel'in Phi için ne yaptığını direk taktığını zannetmiyorum.

    AMD de sonraki nesilde HBM yapısına uygun mimari dizayn yapabilirse idare eder gibi geliyor. Yoksa Nvidia'nın yeni dizaynı ağır gelecek baya.







    Yazını okuyalı bayağı oldu. Genel hatlarıyla anladığımı söyleye bilirim.

    Buna ek olarak sormak istediğim bişey daha var ? Kısmen cevaplamışsın ama

    İntelin ağırdan almasının nedeni sadece intel tabanlı işlemciler olmasından mı yoksa çekirdek hızları hala en büyük silahı olacaklarını ve masaüstünde uzun zaman bir numaralı tercih olacaklarını ve bunun kısa zamanda değişmeyeceğini de düşünüyorlar olabilirler mi ? Ben masa üstünde rahatım abi kimse kolay kolay elime su dökemez daha tarzı bi yaklaşım mı ? Yoksa onlarda bişeyler yapmanın peşinde ve artık bişeyler yapmalıyız diyorlar mı ?

    Ayrıca diğer yazınıda okudum. Kesinlikle hak veriyorum sana özellikle şu yazdıklarına ve bilhassa son satırına.

    ////////////////////////////////////////////
    Bunların hepsi güzel şeyler de AMD nasıl kalkacak altından yada kalkabilecek mi? Lin yada bsd altında çalışan demoları var. Finalizer faln hazırlayabilmişler yani. Bunun windows tarafına gelebilmsei ise sanırım kaynak ve arge personeli sayısına bağlı oalcak.

    İyice dağıtmadan, Ms bi şekilde AMD'yi ele geçirebilmeiş olsa, XB ve oyun tarafı için, server cloud tarafı için öncelikli olarak kullanmak isteyebilir gibime geliyor. Win altında çalışacak bi ton kütüphane bilmemne flan olur mu bilemem o durumda.

    Samsung ele geçirmiş olsa, server alanında kullanabilmek için bolca kaynak ve altyapı aktarması gerekir. Samsung'un olmadığı, AMD'nin ise deneymli olduğu alan server vs. tarafları. Özel bi konsoldan tut artık AMD'ye ne kadar kaynak ayırabilirlerse bilmem, olasılıklar çok olur.

    Ama günün sonunda iş dönüp dolaşıp daha çok hazır yazılım kütüphanesine bakar.
    //////////////////////////////////////////////////////////////////////////




  • os_lnx kullanıcısına yanıt
    Masaüstünde zaten uzun süre yerleri garanti. Mesela tek rakip AMD var, 2019'a kadar matematiksel olarak %100 yerleri garanti. 2009'daki anlaşma, AMD'nin pazar payının 3 çeyrek üst üste %35 üstüne çıkmasını engelliyor. Yani AMD Intel'den 2x hızlı bişeyle gelse, bu anlaşma gereği pazar paylarını takr takr arttıramayacak. 2019'da o kadar dibimizde olmayan bi gelecek esasen.

    Intel esasında o kadar ağırdan faln da almıyor. Rakip rekabet yok diye herkes yerinde saydığı varsayımından hareketle böyle gidiyor. En başta , en basit en son kullanıcıya hitap edecek cinsinden ; single thread performansını arttırmak kolay iş değildir. Hemen hiçbi zaman da olmadı. P4 --> Core geçişinden sonra hep belli tempoda ilerlenildi.

    İşlemcilerde harcanan enerjinin çoğu esas işin ypaıldı ünitelerde değil (diagramlara faln bakınca EU diye gözüken yerler, matematiksel hesaptan adres hesabına vs.), komutların çözülüp sıralanması paketlenmesi hangi kaynakta çalıştırılacağının yeniden ayarlanması vs. sırasında harcanır. x86 için böyle diye başka mimarilerde böyle olmak zorunda değil diyeceksek, onların dizayn vs. performans notktalarından da bakabilmemiz lazım. ARM'ın yapısı karmaşıklaştıkça da öyle veya böyle benzer yola giriyorlar. Branch vs. gibi yapıları daha iyi işleyeblmek için onların da yapıları daha çok komutun daa çok kaynakla eşleşebilmesi için karmaşıklaşmak-genişlemek zorunda.

    Yani gerçek işin EU'da 1 birim enerji ile yapılabilme durumu varsa, bu işin hazır edilmesine ve EU'ya yollanmasına kadar mesela 3x enerji harcanıyor.

    Önceden tartışması vardı, crossbar yapılarda mesela, yani kaynak hedef eşleştirmesi yapan yapılarda tüketilen enerji(çekirdeğin bellek arabirimi veya cpu'daki diğer birimlerle iletişmini kuracak yapı mesela, yada çekirdek içinde mesela hazır gelen-hazır bekletilen-çalıştırılmak üzere kaynaklara yollanacak ops ları tutan register yeniden isimlendirmesi yönlendirmesi vs. yapan reorder buffer / register file vs. gbi yapılara olan bağlantılar vs. ), kaynak üstünde o işin yapılmasından çok daha fazlasını tüketir.

    Intel bu yüzden Nehalem-Westmere'de verimli olan crossbar yapısını terkedip ring bus yapısına geçti. Bi noktadan sonra crossbar'lar verimiler, bi noktadan sonra da fazla enerji tüketimine yol açbilirler.

    Çekirdek içinde yapılanlar yapılabilenler, belli dereceye kadar zaten verimli olarak bulunmuş hesaplanmış yöntemin daha da ileri götürülmesini gerektiriyor. Bunu yaparken, mesela 4cycle olan bi gecikme 5cycle'a çıkma zorunluluğu doğabiliyor. Bu sefer de bu 1 cycle ilave gecikmenin toplam performansı etkilemeyecek şekilde başka türlü geliştirmelerin gereksinimi ortaya çıkıyor.

    En basit haliyle insanların sandığı kadar az sıkışsalar neler yaparlar, bilmem kaç yılın tech'i şmdiden hazır lafları fakir edebiyatı, hiç de öyle değil yani. Eksik rekabetin, neredeyse tekel olmanın elbette karar vericilerin ağırdan aldıkları yerler de mutlaka vardır. Sonuçta yöneticiler de ekonomik şartlara göre, yerine göre oldukça korumacı yaklaşıyorlar. Sen mühendis ol, sana verilmiş hesaplaman gereken bi indirgeme olsun. Bunu yaparken yan çalışma ve destek niyetine yaptığın şeyler yeni bi yaklaşım fikri doğursun. Bunun üzerinden gidince de farklı iyileştirmelerin olasılığı gör. Bunu takım lideri vs. bildir. Bu şekilde kademe kademe daha yüksek seviyedekilere de gelsin. Daha üst seviyedeki karar verici, mesela sınıflandırmadan sorumlu biri, rapor vermesi gereken üstüne bunu yağlı bağlı da takdim edebilir, korumacı politikalar gereği erteleme gereksinimi de olabilir. Neticede o bulunan özellik-teknoloji o ürün için sınıflandırma dışı bırakılıp şirket kütüphanesinde yerini alabilir, tozlu raflarda yıllarca kalabilir, 12 ay sonra tekrar gündeme de gelebilir.

    Dışardan insanlara hoş ve anlaşılır gelmeyen şey teknoloji-araştırma ile sınıflandırılacak ürünün arasındaki bağlantılar ve bunların kararlarının nasıl verildiği. Gelecek bilmem kaç zmanın teknolojisi hazır ama gıdım gıdım veriyorlar yaklaşımına bu yol açıyor zaten. Sen mühendis olarak A B C D E şeklinde 5 tane farklı bağımsız bi yapı kuruyorsun mesela, hepsinin de farklı getirileri götürüleri var. Senin görevin A'yı A yapan B'yi B yapan şeyleri araştırmak bulmak. Bunlardan hangilerinin nerede nasıl kullanacağının kararını vermek kademe kademe dha üst seviyedekilerin görevi.Kömür madeni var, farklı damarlar var, her birinden de farklı kalitede ve bi + özelliği olan kömür çıkıyor. İşçinin görevi bunları çıkartmak. Hangi tarafa ağırlık verileceği, hangisinin hangi pazara hizmet edeceği, hangisinin hangi fiyattan nerelere pazarlanbileceği farklı insanların görevleri. Sırf bu farklı damarlara bakıp, işletmenin stoklarında bilmem kaç yıllık kömür var, piyasa yapmak için gıdım gıdım veriyorlar şeklinde konuşmak gibi bu tech olayları da. Seçim A yolundan yapıldı, ama bu diğer yöntemlerin verimsiz-işe yaramaz-gözardı edilecek anlamına gelmediği de bilinir. Her birinde 5 farklı varyant hazırlanıp önümüzdeki 5 sene gıdım gıdım bunları satalım gibi bakılmaz. Ha yedek planlar, ABC faln gibi farklı planlar stjler hep olur, heryerde var, dersleri de var zaten hepsinin. Ama Inte'e dışardan bakıp öyle böyle oluyor denilemez.

    Yani görece korumacı politikalar var, 2007'den beri bütün büyük tech şirketlerinde var ona bişey demiyorum. Korumacı politikaların şirketlerin yatırım-innovasyonlarını çok büyük oranda etkilediği de ortada. Karar verirken Intel vs. elbette etkileniyor, görece rölantide gibi de gözükmesine yol açıyor. Ama isteseler 10yüz bin kat hızlanır diye bişey yok.

    Göreceli olarak masaüstü vs. tarafları güvende. Server tarafları da göreceli olarak güvende. Öbür taraftan kuyruğu sıkışık IBM vs. tarafları var. Hem innovasyon hem prodaktivite sorunları var IBM'in. IBM OpenPower ile geliştirme için diğer firmalarla yüklenici-araştırma paylaşımı vs. şeklinde ortaklığa girdi. İçlerinden hiçbiri IBM'in sahip olduğu know-how'a sahip değil, ama nasiplenme derdinde. IBM de korumacı politikaların, satışların, düşer gelirlerin yarattığı olumsuzluklardan en azından bi süre boyunca bu konsorsiyum sayesinde idare edebilme derdinde. KAfadan 4 sene boyunca kimsenin IBM ile ciddi ciddi rekabet edebilecek bi Power mimarisi geliştiremeyeceği varsayımında bulunsak mesela, hiç de o kadar abartmış olmayız. Bi süre sonra diğer ortaklardan bu sevdası olan varsa bile vazgeçebilir.

    Öbür taraftan IBM çözümlerinde x86 'yı öne çıkarmaya çalıştığı yerler var. Bu ne tezatlık denir mi? Yerine göre denir.

    Power'ı heryere takr takr sokamazsın mesela. Yerine göre Xeon'lardan daha hızlı gibi mi? Evet öyle. Yerine göre Haswell bile çok daha iyi verimli gibi mi? Ona da evet. Yani o zman IBM Power8 ile direk güvende değil.

    Bu OpenPower konsorsiyumu şimdilik süperbilgisayar tarafında işe yarayacak gibi. Datacenterlar için de hem direk hem dolaylı olarak. Coral için IBM-Nvidia tane sistem kuracaklar mesela. Ha öbür taraftan IBM'in geçmişte yüklendiği süperbilgisayar ihalesinden tazminatını ödeyip yarıyolda bırakmışlığı vs. de var. Hani kesin ve garanti altına alınmış şeklinde de bakmamak lazım. Bu taraftan IBM'in tutunabileceği dallar var yani.

    Intel, 3. Coral sistemi için mecburiyetten seçildi (diğerlerinden farklı olma koşulu var diye). Intel superbilgisayar pazarı için daha fazla çalışmakta. Şimdi x86 tarafında olan korumalı pozisyonu x86 dışına çıkıldığında her taraftan atak halinde. Çünkü devasa bi innovasyon patlaması var dünyada. Innovatif teknoloji para eden teknoloji demek değildir (ki insanların bi çok açıdan anlamadığı şey burası, TR'nin kalkınması için yüksek teknoloji / katma değer saçmalıklarıyla neden bahsettiklerini bilmeyip domatesle cep telefonunu karşılaştıranlara kadar uzar). Para eden teknoloji = yepyeni bişey yepyeni bi yaklaşım eğer kabul edilebilecek şekilde gelmişse olur, bi probleme kabul edilebilecek miktarda katkı sağlıyorsa olur, çok büyük bi verim artışı sağlıyorsa , maliyetde devasa azalma sağlıyorsa, arge zamanını kısaltıyorsa, başka türlü katkılar sağlıyorsa .... olur. Tabi bide en büyük kısmı Algı Yönetimine oynanabilirse iyi pazarlanabilirse, insanlara gereksinim duymayacakları şeyi aldırtabilirse olur(ne yaptığını bilen ne gerektiğini bilen geliştrici gruplarının önüne bişeyler atıp alın bak güzel demek ile normal insanlara mesela bi teli yağlayıp ballamak farklı şeydir). Oysa dünyada dolaşan para heryerde para etmeyen + edemeyen devasa innovasyon patlamasına yol açtı. Aklına ne gelirse her alanda devasa miktarda bilgi üretiliyor, acayip araştırmalar yapılıyor. Ama bunların çoğunun yakın zamanda paraya dönüştürülme olasılığı sııfra yakın. Bilimin, arge'nin para etmedi diye çöpe atılmayacak olması, know how'ın kıymetli olması, bi altyapı sağlaması ve yukarda Intel'den bahsederken ABCDE faln diye bahsettiğim gibi ilerde kullanılabilir fikir verebilir vs. olması başka bişeydi, kısa zamanda paraya dönüştürülebilen araştırma-teknoloji ise bambaşka bişeydir. Bugün dünyada olan innovasyon patlaması iken olmayan şey paraya dönüştürülebilir ürünlerin feci miktarda olamması. Küçük küçük şeyleri toplarsan toplamda büyük miktarlara ulaşabilir belki. Ama bütün bu innovatif yaklaşımlar tek başlarına ne ciddi para getirebiliyor, nede ciddi kaynak bulabiliyor. doğal olarak da başka araştırmalara her şart altında kaynak da olamıyorlar.

    Bu kadar niye uzattım? Bu artan innovasyon farklı farklı yaklaşımların artmasına yol açtı (fazla para etmeseler bile). 100 tane problemi olan bi geliştirme işinde A firmasının geliştirdiği bi üründeki bi tech bi çözüm oabiliyor ama 99'una fayda etmiyor. Şimdi gidip bu küçük firmaya bolca yatırım yapmanın anlamı yok. Zaten böyle küçük ve bişeylerin peşinden koşan firmalarla dolu ortalık. Ama bu kapital ve sade güçlü olup sıyrılabilenleri hayatta tutmaya dayanan sitem, o üretilen verinin bilginin argenin know-how'ın buharlaşmasını sağlamış olmuyor. Bu kısım da önemli. Çünkü, daha ağır aksak da olsa, o farklı sektörlerde farklı firmaların peşine düştükleri şeyler günün birinde bi şekilde birilerinin işine yarayıp yavaş yavaş yukarıya doğru ilerleyip, farklı teknolojileri birleştirebilen birilerinin elinde daha işlevsel daha rekabetçi bi yapıya bürünebiliyorlar. Biyotech firmaları giibi konumuzla alakalı olmayaan alanlarda da var tonla.

    Bunların Intel ile alakası x86 dışına çıktığımzıda, Intel'in rekabet etmek istediği alanlarda bi sürü irili ufaklı rakip ile karşılaşması yüzünden var. Kimse x86'nın olduğu masaüstüne devasa bi kalkınma hamlesi misali saldıramaz, gücü yetmez. Ama FPGA üstünde bi SQL veritabanını hızlandıracak yapı kurup bunu datacenterlara sokmaya çalışabilir. MS'nin Catapult'u, Bing için 2x kapasite artışı + %29 gecikmede düşme sonucu vermiş deneylerde. CAtapult belli işlerin FPGA'ya aktarıldığı bi kart altyapısı. Nihayetinde datacenterin kapasitesini arttırıp tüketilen gücü azaltıyor. Ha MS'nin Catapul'u Altera FPGA'larını kullanıyor, Altera küçük firma değildi, yani yukarda bahsettiğim irili ufaklı olanları temsil etmiyor. Ama Intel işlemcilerin hakim olduğu bi datacenter altyapısına Altera FPGA'sının girmesine vesile oldu bu dimi? Intel gitti Altera'yı satın aldı, FPGA CPU hibridi peşinde vs.vs. Tam bahsettiğim şeyleri kapsamıyor bu örnek ama yine de sade x86 Xeon'lar ile işletiln bi datacenter'da FPGA temelli hızlandırıcı yapıların olduğu değişik yaklaşım demek Intel'in gelirlerinde oynama anlamına gelir mi gelmez mi?

    Bu işin bi yüzü. Hızlandırıcı ve HPC tarafından Xeon Phi önceden bahsedildiği gibi iyi yer buldu. Soketli Xeon PHi vs. altyapısını da kuruyorlar, HBM'li yapılarını da. x86 + AVX temelinden hızlandırıcı yapısı, host CPU ile iletişimi, bunları verimli çalıştırmak ve programcılar hızlı iş yapmak için gerkeen altyapılar vs. vs. Hepsi ilave araştırma demek.

    Server-datacenter tarafında daha iyi sonuçlar elde edebilmek dönüp dolaşıp single-thread performansından çekirdek dizaynında, çekirdek dışı uncore ile farklı yapıların geliştirlmesine faln yol açıyor (QPI-Numa ilerişiminin veriminin arttırılması gibi, i7'nin 32 çekirdekli serverdan daha hızlı çalışmasına yol açan durumları azaltmaya çalışmak gibi mesela). Bunların dönüp dolaşıp oyun oynayan birisinin alacağı perf artışına katkıları var yani.

    Nihayetinde sade son kullanıcı açısından bakarsak, nod küçülmesi ilerlemedeki engelleri aşıp bi süre daha güvenli yolda ilerleme imkanı veriyor(22nm 14nm faln gibi). Bundan sonra feci zıplamalar şimdiki bilinenlere göre olmaz gibi (şimdiki trendin devamı şeklinde olması bekleniyor yani).

    Ufak firmaların nasıl tehdit ettiğini de daha sonra yazarım.




  • Benchmark var mı ondan haber verin

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Daha sonra yazarım dediğin iki konu vardı birisi amd-intel arasındaki pazar payının artırılması ile ilgili anlaşma, yada buna etki eden anlaşma.
    Diğeri ise küçük firmaların tehtid meselesi ?

    Bekledim yazarsın diye ancak yazı gelmedi. Tabi bukadar uzun yazı yazmak vakit alıyor ve hele senin yazdığın gibiyse. Ve herzamanda vakit olmuyor.

    Yukarıdaki yazına bakarak soracağım daha fazla şey ortaya çıkıyor. Ancak sıra sıra ve sorsam daha iyi olacak sanırım. Çünkü hepsiyle ilgili uzun uzun yazmam mümkün. Yanı sıra her soru ayrı başlıklar halinde cevap gerektirebilir. Bu yüzden tek tek sorsam daha iyi olur sanırım. Cevap aldıkça bir sonraki soruya geçerim.

    Genel olarak bir-iki soru sorayım.

    Bir programın direkt olarak gpu üzerinde yada karma yapı üzerinde paralel işlem gücünden yararlanacak şekilde çalışması bize nekadar yakın ? (direkt olarak paralel yapıda çalışacak programlanmış olmasa bile)

    Ve bir programcı için bu nimetlerden faydalanmayı sağlayacak yaygın bir kütüphane ve kütüphaneyle birlikte bir programlama dili bize nekadar uzak ?
    (Her ortam için nvidia, amd ve belki intel ve hatta yeni ortaya çıkacak olan yapılar için)

    (Her nekadar nvidia paralel hesaplama platformu sunsada, nekadar yaygın ve kullanışlı olduğu tarıtışılır ve en başından cuda yı hedef alarak geliştirilen bir programın amd gpu da ve apu sunda ve buna bağlı yeni amd teknolojilerinde çalışmayacağı aşikar. Aynı şekilde amd nin sunduğu paralel programala platformununda nvidia üzerinde çalışmayacağı hele ki HSA mimarisi baz alarak yaptığımızı düşünürsek Amd a10 7850k dan önceki apularda bile çalışmaması söz konusu.)



    < Bu mesaj bu kişi tarafından değiştirildi os_lnx -- 18 Ekim 2015; 1:32:41 >




  • os_lnx kullanıcısına yanıt
    Önümdeki chrome da açık 30 tab, biraz yüklendi diye kapadığım ff de 146 tab var üstünden geçmem gereken :/

    Küçük firmaların farklı etkileri var. Birincisi, bunlar daha önceden bi teknolojiyi arkadan etrafından dolaşılması imkansız seviyede geliştirmiş ve sahiplenmiş lisanslamış olabiliyorlar(veya patent durumu allengirli veya karışık olabiliyor). Büyük firma da doğal olarak o yoldan geçerken tarama yapmalarına rağmen denk gelemeyebiliyorlar. İş bu şekildeyse, küçük firmanın büyük firmada gördüğü kendi tech.'i ilerde ortalığı karıştırabiliyor. Ha heryerde bu böyle belki ama , iş bi noktadan sonra matematiği ve programlama şeklini nasıl kullanabileceğimizi de mi lisanslayacaksınız noktasına doğru ilerlemeye başlıyor. Neyse daha çok karıştıracam, onun için matematik ve belli bi yöntemi nereye kadar lisanslayabilirsin nereye kadar patent başvurusundan olumlu cevap alabilirsin, hangi noktadan sonra büyük firma mesela bi FMA yapısında küçük firmanın geliştirdiği yaklaşımı kullandığında işler direk bi patent ihlalinden daha karışık hal alabiliyor.

    Başka bi nokta, Büyük firmalar, belli noktadan sonra innovasyon-yatırım konusunda sıkıntıdalar. Bunlar isterse fazla büyük diyebileceğin seviyede olsunlar. Firma büyüdükçe kurum içi bürokrasinin dozajı da artar, bi tür devlet gibi olurlar. Bu da kararlarda kötüleşme yanılma vs. gibi sorunların artmasına yol açar. Ortamın durumuna göre de daha korumacı yollar seçebilirler. Bu yatırımları da etkiler. Yıllar boyunca olduğu gibi mesela. 3 kuruşa 5 köfte peşinde koşulur, ama 3 kuruştan da tasarruf yapmak için yol aranır. Ama kimse daha lezzetli tarif için , daha iyi pişirme yöntemi için 3.5 kuruş ile devam edelim noktasına gelmez. Küçük firmalarda ise, startup'ından tut belli bi yatırım bulmuş olanına veya bi süredir idare edebilenine kadar, kendi alanında yapmaya çalıştığı şeyler açısından daha çok doğru karar alma şansına sahip olabiliyorlar. Bu, küçük firmanın belli bi alanda yapacağı arge'nin daha verimli şekilde işlemesine de yol açabiliyor. Konuyla alakası, bu tarz küçük firmalar ellerindeki tech'i piyasaya da sunarken, direk kullanım alanı bulunamasa ve firmaya yeterli getirisi olamasa bile büyük firmalar lisanslama şirketi satın alma yoluna gidiyor.

    E iyi, M&A lafını duymadığımız yer kalmadı da neye yarıyor? Büyük firma 10milyar yatırım yapmazken, gidip şirket alınımına 20 milyar bayılabiliyor. konuyla alakalı değil ama ilaç vs. firmaları (biyotech vs. ler) argeye 3 kuruş yatırıp, gibip başkasının molekülünü de satın alabiliyor (600 milyon gibi rkamlara), belli bi işi yapabileck yöntem geliştirmiş firmayı 10 milyona da alabiliyor. Yarıiletken vs. açısından bakınca, mesela 2007'de kurulan, büyük firmalardan (intel vs. gibi) 60-100 milyon civarlarında para toplamış olan firmalar üstünde çalıştıkları şeyde zar zor ilerleyip, aradan geçen bunca senede bi nevi duvara toslamış gibi de olabiliyorlar(mesela MEMS resonator vs. ile uğraşan firmalar gibi). Bu tarz firmaların ürettikleri tech her yerde kullanılabilen, sensörlerin vs. içine girebilen, 3 kuruşluk getrisi olurken, bunları kullanıp final ürün üretenler belki binlerce kat gelir elde ediyorlar. Başka başka firmalar, ürettikleri ufak bişeyi lisanslanabilir tuttuğu ve işe yarar olduğu zaman, büyük bi firma tarafından eğer yutulmamış ise, o tech ile başkalarına imkan verip büyüklerin işini riskli hale getirebiliyor.

    Server alanına ARM ile girmeye çalışanlara bakalım mesela. Çekirdek temeli ARM'dan, çekirdek dışı birimler arası iletişim detayları-interconnect altyapısı ARM'dan, eklenebilecek hazır accelerator IP'leri dışında sağdan soldan bulunabilecek ve çipe implementente edilebilecek, görece maliyeti düşük bi sürü şey var. Hepsini birleştirdiğinde eşşek gibi çalışıp server işlemcisi yaptık diyenlerin karşısında bi tür serverımsı çipi ile çıkabiliyorlar/çıkmaya çalışacaklar. PR'ını kaslı çiplere rakip olarak geliyoruz deseler de işin içyüzü öyle değil. Konuyla alakalı olan kısmı, adamların bu tarz bi işlemciyi sağdan soldan tech toplayıp yapabiliyor olmaları.

    Buna benzer bi sürü detay vs. var.

    Direk GPU üstünde imkansız. anca acaip bi işletim sistemi ve gpu altyapımız vs. olr anca o zmanlar. Yani normal sıradan bi program gibi tak tak çalıştır, belli kısımları veya tamamı gpu'da çalışsın. Olmaz. Belki yıllar yıllar sonra.

    HSA tarzı altyapının amacı belli bi yapıya göre kolay kodlama sağalamak kabul ama bi programın önce bu altyapıya göre hazırlanması lazım. Photoshop vs. gibi şeyler mesela, önce HSA göz önünde bulundurularak hazırlanması lazım. Sonrasında belli yapılar , bunun iyileştirme aşamalarında görev alacak, belki belli kısımlarını gpu'da çalıştırabilir bulacak. Yani HSA'ya göre yazacaksın kodu, bunun compile kısmında HSAiL için olan çıktısı, HSAiL'yi hedef donanıma göre ilave iyileştirme yapabilecek. E nasıl olcak bu? PCI-e de 3000cycle gecikme olabilirken kodun seri kısmı neyi bekleyecek, ne kadar spekülatif çalışabilecek? Yani donanım altyapısında belli farklılıklar olabilmeli. HSA'ya uyan APU'da bu olur mu? Bazı açılardan çok güzel olur. Ama dünya APU etrafında tam dönmüyor daha. Intel oraya gelince AMD'nin ocağına incir ağacı dikilmiş gibi olacak mı? O da olabilir. Sonuçta ben AMD mühendisinden cpu-gpu coherency'nin anlamsız-gereksiz olduğunu da duydum, önceden coherent altyapıya laf sokan Intel mühendisinden çark etmiş biçimde geleceğin coherent altyapıda olduğunu ve Intel'in bu yolda kesin ilerledğini söyleyen başka Intel mühendisine kadar çok gördüm. Intel altyapı olarak GPU içeren kendi CPU'larının GPGPU içinde kullanılabilmesi açısından iyi yol katetti ve perfleri iyi. Böyle bakınca görece yakın zamanda Intel'in de HSA tarzı bişeylerin peşinde olması bende varım vs. demesi mümkün mü? bilemem, biraz zorlama olur. Çığır açacaz, HSA'daki gibi bi yapımız olacak, düşük latency'li CPU-GPU iletişmimiz var, işi Intel bilmemneye göre yazar ve compile derseniz kendi başına cpu-gpu bölmesi çalıştırması vs. yapacak... Mümkün mü? olmayacka iş değil ama çok şeyi karıştıracak bişey. yakın zamanda beklenmemeli.

    normal programı otomatik olarak şurası şurda burası burda diyemezsin. bunun için programın yaptığı işe göre tasarım aşamsında bişeylerin yapılması gerekir. Yani sonradan gel şurası şurda çalışsın diyemezsin. Belki sonrdan 3 kuruşluk iyileştirme adına bişey ypmaya çalışırsın. Ama sonradan mesela %20 ilave perf alabileceksin diyelim, kodu düzgün yazarsan belki 2x belki 5x hızlanma zaten elde edebilmen lazım. iyi yazdığın şeyin, cpu-gpu diye bölme sırasında oluşaacak latency sorunlarına rastlamadığından, daha iyi sonuç verebilmesi lazım. CL, OpenMP gibi yapılar buna izin veriyor ama herhngi bi programın, CPU hedef olsa bile CL' göre yazılmasını beklemek hiç olası değil. Ha sen oturup cpu'da çalışacak bi iş için bile CL ile yazarsın, sonrasında bu GPU'da da çalıştırılabilir olur, veya HSA gibi bi yapıda kısım kısım bölünebilir olur bi yere kadar. ama bunu çoğunluğa yayayamazsın. Ms vs. nin de bu tarz işlerin içine girmeis lazım. CL ile basit bi iş için bile bi sürü initialize etmen gereken ve kodu uzatan şeyler var. Bunlar için otomatik - template tarzı bişeyleri herkesin kullanacağı vs. vs. noktalara getirmen lazım. hbunlar yakın zamanlarda olması imkansız şeyler.




  • quote:

    Orijinalden alıntı: Rubisco

    Önümdeki chrome da açık 30 tab, biraz yüklendi diye kapadığım ff de 146 tab var üstünden geçmem gereken :/

    Küçük firmaların farklı etkileri var. Birincisi, bunlar daha önceden bi teknolojiyi arkadan etrafından dolaşılması imkansız seviyede geliştirmiş ve sahiplenmiş lisanslamış olabiliyorlar(veya patent durumu allengirli veya karışık olabiliyor). Büyük firma da doğal olarak o yoldan geçerken tarama yapmalarına rağmen denk gelemeyebiliyorlar. İş bu şekildeyse, küçük firmanın büyük firmada gördüğü kendi tech.'i ilerde ortalığı karıştırabiliyor. Ha heryerde bu böyle belki ama , iş bi noktadan sonra matematiği ve programlama şeklini nasıl kullanabileceğimizi de mi lisanslayacaksınız noktasına doğru ilerlemeye başlıyor. Neyse daha çok karıştıracam, onun için matematik ve belli bi yöntemi nereye kadar lisanslayabilirsin nereye kadar patent başvurusundan olumlu cevap alabilirsin, hangi noktadan sonra büyük firma mesela bi FMA yapısında küçük firmanın geliştirdiği yaklaşımı kullandığında işler direk bi patent ihlalinden daha karışık hal alabiliyor.

    Başka bi nokta, Büyük firmalar, belli noktadan sonra innovasyon-yatırım konusunda sıkıntıdalar. Bunlar isterse fazla büyük diyebileceğin seviyede olsunlar. Firma büyüdükçe kurum içi bürokrasinin dozajı da artar, bi tür devlet gibi olurlar. Bu da kararlarda kötüleşme yanılma vs. gibi sorunların artmasına yol açar. Ortamın durumuna göre de daha korumacı yollar seçebilirler. Bu yatırımları da etkiler. Yıllar boyunca olduğu gibi mesela. 3 kuruşa 5 köfte peşinde koşulur, ama 3 kuruştan da tasarruf yapmak için yol aranır. Ama kimse daha lezzetli tarif için , daha iyi pişirme yöntemi için 3.5 kuruş ile devam edelim noktasına gelmez. Küçük firmalarda ise, startup'ından tut belli bi yatırım bulmuş olanına veya bi süredir idare edebilenine kadar, kendi alanında yapmaya çalıştığı şeyler açısından daha çok doğru karar alma şansına sahip olabiliyorlar. Bu, küçük firmanın belli bi alanda yapacağı arge'nin daha verimli şekilde işlemesine de yol açabiliyor. Konuyla alakası, bu tarz küçük firmalar ellerindeki tech'i piyasaya da sunarken, direk kullanım alanı bulunamasa ve firmaya yeterli getirisi olamasa bile büyük firmalar lisanslama şirketi satın alma yoluna gidiyor.

    E iyi, M&A lafını duymadığımız yer kalmadı da neye yarıyor? Büyük firma 10milyar yatırım yapmazken, gidip şirket alınımına 20 milyar bayılabiliyor. konuyla alakalı değil ama ilaç vs. firmaları (biyotech vs. ler) argeye 3 kuruş yatırıp, gibip başkasının molekülünü de satın alabiliyor (600 milyon gibi rkamlara), belli bi işi yapabileck yöntem geliştirmiş firmayı 10 milyona da alabiliyor. Yarıiletken vs. açısından bakınca, mesela 2007'de kurulan, büyük firmalardan (intel vs. gibi) 60-100 milyon civarlarında para toplamış olan firmalar üstünde çalıştıkları şeyde zar zor ilerleyip, aradan geçen bunca senede bi nevi duvara toslamış gibi de olabiliyorlar(mesela MEMS resonator vs. ile uğraşan firmalar gibi). Bu tarz firmaların ürettikleri tech her yerde kullanılabilen, sensörlerin vs. içine girebilen, 3 kuruşluk getrisi olurken, bunları kullanıp final ürün üretenler belki binlerce kat gelir elde ediyorlar. Başka başka firmalar, ürettikleri ufak bişeyi lisanslanabilir tuttuğu ve işe yarar olduğu zaman, büyük bi firma tarafından eğer yutulmamış ise, o tech ile başkalarına imkan verip büyüklerin işini riskli hale getirebiliyor.

    Server alanına ARM ile girmeye çalışanlara bakalım mesela. Çekirdek temeli ARM'dan, çekirdek dışı birimler arası iletişim detayları-interconnect altyapısı ARM'dan, eklenebilecek hazır accelerator IP'leri dışında sağdan soldan bulunabilecek ve çipe implementente edilebilecek, görece maliyeti düşük bi sürü şey var. Hepsini birleştirdiğinde eşşek gibi çalışıp server işlemcisi yaptık diyenlerin karşısında bi tür serverımsı çipi ile çıkabiliyorlar/çıkmaya çalışacaklar. PR'ını kaslı çiplere rakip olarak geliyoruz deseler de işin içyüzü öyle değil. Konuyla alakalı olan kısmı, adamların bu tarz bi işlemciyi sağdan soldan tech toplayıp yapabiliyor olmaları.

    Buna benzer bi sürü detay vs. var.

    Direk GPU üstünde imkansız. anca acaip bi işletim sistemi ve gpu altyapımız vs. olr anca o zmanlar. Yani normal sıradan bi program gibi tak tak çalıştır, belli kısımları veya tamamı gpu'da çalışsın. Olmaz. Belki yıllar yıllar sonra.

    HSA tarzı altyapının amacı belli bi yapıya göre kolay kodlama sağalamak kabul ama bi programın önce bu altyapıya göre hazırlanması lazım. Photoshop vs. gibi şeyler mesela, önce HSA göz önünde bulundurularak hazırlanması lazım. Sonrasında belli yapılar , bunun iyileştirme aşamalarında görev alacak, belki belli kısımlarını gpu'da çalıştırabilir bulacak. Yani HSA'ya göre yazacaksın kodu, bunun compile kısmında HSAiL için olan çıktısı, HSAiL'yi hedef donanıma göre ilave iyileştirme yapabilecek. E nasıl olcak bu? PCI-e de 3000cycle gecikme olabilirken kodun seri kısmı neyi bekleyecek, ne kadar spekülatif çalışabilecek? Yani donanım altyapısında belli farklılıklar olabilmeli. HSA'ya uyan APU'da bu olur mu? Bazı açılardan çok güzel olur. Ama dünya APU etrafında tam dönmüyor daha. Intel oraya gelince AMD'nin ocağına incir ağacı dikilmiş gibi olacak mı? O da olabilir. Sonuçta ben AMD mühendisinden cpu-gpu coherency'nin anlamsız-gereksiz olduğunu da duydum, önceden coherent altyapıya laf sokan Intel mühendisinden çark etmiş biçimde geleceğin coherent altyapıda olduğunu ve Intel'in bu yolda kesin ilerledğini söyleyen başka Intel mühendisine kadar çok gördüm. Intel altyapı olarak GPU içeren kendi CPU'larının GPGPU içinde kullanılabilmesi açısından iyi yol katetti ve perfleri iyi. Böyle bakınca görece yakın zamanda Intel'in de HSA tarzı bişeylerin peşinde olması bende varım vs. demesi mümkün mü? bilemem, biraz zorlama olur. Çığır açacaz, HSA'daki gibi bi yapımız olacak, düşük latency'li CPU-GPU iletişmimiz var, işi Intel bilmemneye göre yazar ve compile derseniz kendi başına cpu-gpu bölmesi çalıştırması vs. yapacak... Mümkün mü? olmayacka iş değil ama çok şeyi karıştıracak bişey. yakın zamanda beklenmemeli.

    normal programı otomatik olarak şurası şurda burası burda diyemezsin. bunun için programın yaptığı işe göre tasarım aşamsında bişeylerin yapılması gerekir. Yani sonradan gel şurası şurda çalışsın diyemezsin. Belki sonrdan 3 kuruşluk iyileştirme adına bişey ypmaya çalışırsın. Ama sonradan mesela %20 ilave perf alabileceksin diyelim, kodu düzgün yazarsan belki 2x belki 5x hızlanma zaten elde edebilmen lazım. iyi yazdığın şeyin, cpu-gpu diye bölme sırasında oluşaacak latency sorunlarına rastlamadığından, daha iyi sonuç verebilmesi lazım. CL, OpenMP gibi yapılar buna izin veriyor ama herhngi bi programın, CPU hedef olsa bile CL' göre yazılmasını beklemek hiç olası değil. Ha sen oturup cpu'da çalışacak bi iş için bile CL ile yazarsın, sonrasında bu GPU'da da çalıştırılabilir olur, veya HSA gibi bi yapıda kısım kısım bölünebilir olur bi yere kadar. ama bunu çoğunluğa yayayamazsın. Ms vs. nin de bu tarz işlerin içine girmeis lazım. CL ile basit bi iş için bile bi sürü initialize etmen gereken ve kodu uzatan şeyler var. Bunlar için otomatik - template tarzı bişeyleri herkesin kullanacağı vs. vs. noktalara getirmen lazım. hbunlar yakın zamanlarda olması imkansız şeyler.



    Sorularıma kısmende olsa cevap aldım. Benim yanlış bildiğim yada tam anlayamadığım noktalar olabilir. O yüzden soruları bile yanlış soruyor olabilirim. Kusura bakmazsın artık.

    Neyse beklediğim cevapları aldım yinede sanırım. Biraz ümidim vardı yakın zamana daha olumlu gelişmeler bekleriz diye ancak bu evrilme aşaması biraz uzun sürecek gibi. Ve evet, öyle anlıyorum ki yazdıklarında bir programı yazarken ta en başta algoritmasını bile aşamasına geçmeden ne yapacağını nasıl yapacağını belirlerken bir tasarım, şema oluştururken buna göre dizayn etmek ve bunu göz önünde bulundurarak yapmak en başından buna göre başlamak gerek. Şu anda bunu düşündüğümde bu aşamada program yazıcıların ister birtek isterse ekip olsun yaşayabileceği zorluk gözümün önüne geliyor.

    Ancak anlamadığım nokta HSA nın daha çok AMD tarafından sahiplenilmiş olması en azından bu isimle birazdaha anılıyor olması.(HSA foundation. Sanırım bunun kurulmasında ençok AMD nin etkisi var) (Yanlışta olabilir, yanlışsa düzelt lütfen). Nvdianın masaüstü işlemcide olmaması ve yeni oluşum içinde olması. Yapı benzesede farklı kulvarda gidiyo olması. İntel in yenice ve ileriye dönük hamlesi(Anlattığın üzere 2020 ye kadar zaten rahat). Bu evrilme sürecinde cpu-gpu karma yapıdan yararlanmak için her ayrı oluşum için programı yeniden yazmak mı gerekecek ? Çünkü şuan bile gpu hızlandırma için herkes kendi platformuna göre bişeyler sunuyor.
    Yoksa belli yapıda yazılan bir program için müşterilerimi zorlamak gerek ? Bizim programımız bunda çalışıyor bunu almalısınız diye !
    Yoksa bu çatallaşmaya bakınca yakın zamanda tüm platform ve bu alandaki teknolojilerde iyi biçimde ve aynı performansla çalışacak programlar yazmak yakın zaman için sadece hayal gibi. Kim bilir belki 2030 yılında bişeyler görürüz.

    Yoksa şimdilik en iyisi GPGPU ile devam etmek, yazılan programları iyi dizayn ederek işin hesap yoğunluklu kısımlarını yapılabildiği mümkün olduğu kadar gpu ya devretmek mi ?Ki yukarıda değindim herkes daha çok kendi platformuna göre bişeyler sunuyor. Benim için kafa karıştırıcı olan burası.

    Çok alakalı değil ama sıradaki sorum IBM ile ilgili ? Nekadar zor gözüksede IBM masaüstü işlemci pazarını düşünüyor olabilir mi ? Belki önümüzdeki 10 yıl için ?




  • os_lnx kullanıcısına yanıt
    IBM'in kılını kımıldatmaya dermanı yok. %70'den fazla finansal mühendislikle idare ediyor. Yıllardır hisse gerialımı vs. yapıyor ama bu, etraflıca bahsedemeyeceğim şekilde 2007'lerden beri bütün büyük firmaların sorunu. Büyük innovasyonları, büyük adımları belli büyüklüğün üstündeki firmalar rahat rahat yapamıyorlar. Çünkü riskleri fazla, götürüleri fazla, gelecek belirsiz, idare edenler şirket içi bürokrasiler karışık vs. vs. Nihayetinde tutup gelecek için fırsat yaratacak bilmem kaç milyar ilave yatırım yerine finansal mühendislikle idare etmeyi daha uygun görüyorlar. Geçmişte innovasyon merkezi gibi görülüp, piyasaya da yansıyan IBM bugün bütün umutlarını WAtson'a bağladı. Watson'dan bilmem kaç milyar bekliyorlar ama bu kaç sene boyunca yavş yavaş gelecek. Gelirleri çöktükçe çöküyor IBM'in. Zor tutundukları dallardan biri Power8'in bazı durumlarda iyi iş çıkartması ve yerine göre Intel'e göre daha çok tercih edilmesi (yaygın olamadan ama). Yine IBM'in bazı işler için tutup x86'lı serverlarını tavsiye etmesi vs. Watson 'ın getireceği milyarlar için bilmem kaç sene var. Bu yüzden Cloud-Watson-Power tarafındalar. Masaüstü vs. IBM için kesin öldü, bi dha geri gelemez. Olasılık isteyen varsa, önce Intel ile rekabet edebilecek kdar maliyet-satış fiyatı biçebileceği çip ile gelebilmesi laızm. Şimdiki şartlarda bu imkansız. Power8'i neye göre test ettiğine göre değişiyor ama, verim açısından Fx8350 bile rekabet edebiliyor diyeceğin yerleri bile var yani (kendi işinde kullanıp Intel'den 3x daha iyi diyeni de var, Cern'de belli işe göre test edip dediğim gibi kötü diyeni de var).



    quote:

    her ayrı oluşum için programı yeniden yazmak mı gerekecek ?


    Bu zaten yıllarca böyle. Sorunun temeli bu zaten. En bilineni ne Cuda. Cuda da bi program, Photoshop Premier vs. olsun örnek. Bunların adam gibi perf göstermesini istiyorsan Fermi için farklı kodlaman ve ayarlaman, Kepler için farklı, Maxwell için farklı ayarlaman lazım. Elinde bi yaklaşım var. Ya bu yaklaşımı farklı mimarilere göre iyileştireceksin, yada farklı mimariler için farklı tasarım yapacaksın. Tıpkı oyun gibi. render altyapısını belli bi çipe göre yaparsan, farklı çipe göre en iyi sonucu vermez. Zaten olmayan da bu. Dx ile genel kaidelere göre yazarsın. Sonra donanım driverı dx çıktısını alıp hedef platforma göre bazı iyileştirmelerden geçirir, sonra hedef donanıma göre çıktıyı o donanımda çalıştırır. Yani Fermi'de Kepler'de MAxwel'de çalışan şeyler hepten farklı. Ha peki oyunu Fermiye özel olarak, Dx üstünden yazdın. Kepler MAxwell'de de süper çalışacak mı? Çalışmayacak. Dx üstünden yazmış olsan bile bi yerden sonra su koyuverecek, çünkü temelleri farklı. Driver optimize ederek çıktı verirken , esas yapıyı yaklaşımı değiştiremez. E peki nolcak böyle her oyunu her driverda farklı donanıma göre mi optimize edecez ayrı ayrı yazacaz. Aynen öyle. Gerçeğin ta kendisi bu. Ee kim yapıyor bunu? Kimse. Eee nasıl peki düzgün çalışıyor? Adamlar oturuyor, popüler oyunlar için labda günlerce analiz yapılıyor. Bu analizlere göre programcının Dx'den istdiğini, veya programcının GPU firması ile paylaştığı kadarı üstünden belli iyileştirmeler yapılıyor. Bu iyileştirme dendiği zaman binaya dış cephe boya yapılacak, yukardan 3 kova boya dökecekler bina monalisa gibi olacak anlaşılıyor. Tek tek mozaikler halinde işlenecek o. dışardan eleman elinde ince fırça, tek tek ufak mozaik kadar alanı elindeki plana göre boyayacak. İŞte o küçük boyadığı alan, mesela 5x5cm'lik alan, programdaki belli bi kod yapısına karşılık geliyor. atıyorum bi fonksiyon olur, klas olur , özel bi yapı olur. Bu hashlenip kütüphaneye atılır. Oyunlarda shaderlar realtime compile edilip çalışmaz. Önce oyun-sahne yüklenirken compile edilir, sonra o gpu'da çalıştırılabilecek katman GPU'da realtime çalışır. compile sırasında driver shaderlarda veya oyunun yapısında belli kod yapılarını tanırsa (oyundaki kod yapılarını okuyup-hashleyip-kütüphanedekilerle karşılaştırıp), o yapı için olan iyileştirilmiş-değiştirilmiş devamyolunu ayarlıyor bunu çalıştıracan diyor donanıma. Dahası, programcının yazdığından tamamen farklı bişeyin gpu'da çalışmasını sağlayabiliyor. Daha önce de yazdım, Nvidia Driverı illegal CL-GL yapılarını kabul edip, otomatik düzeltip çalıştırabiliyor mesela(illegal = mesela bi overflow oluşacak, olduğu zaman bunun etksi ne ise bunu umursamayıp-etkisini sınırlayıp çalıştırıyor). GPGPU vs. için de aynı şeyler geçerli. Ama GPGPU programı oyun kadar çeşitli olmadığından ve oyunlardan daha yüksek paraya satıldığından, geliştricisi ile daha yakından ve o donanıma-API'ye göre çalışma imkanı daha çok olabiliyor. Sonuçta GPU'yu kullanabilen Photoshop alternatifi tonla program yok mesela.

    Bi geri gelirsem, farklı donanıma göre aynı programın farklı iyileştirmeleri patch şeklinde veya yeni versiyonda gelebiliyor. İyileştirme ile, yeni donanıma göre yeniden bi yapı-algo vs. oluışturup daha yeni versiyon da gelebiliyor.

    Ee işin içinden çıkılmaz bi yöne ilerlioz sanki? yıllardır böyle zaten. Cuda-Nvidia daha öndeydi, herkes Cudaya göre ve az değişen donanıma göre yazardı. Kepler geldiğinde yeni donanımda eski programı kullanmaya kalkanların canı sıkıldı. Donanmda GPGPU için problemli olan yanlar da vardı çünkü. Yani kabaca Fermi ile aynı sayıda iş yapabliyor gibi oluyor Kepler. Ee peki Keplere göre herşeyi yeniden yazsak ilerleme olmaz mıydı? Olurdu-oldu da ama 2x ile %20 arasındaki fark gibi. 580 vs. 780 arasında çok fark olmasını bekleyip dudak bükmek gibi.

    Yani bu işin temelinde var bu çatallanma olayı. Tek ortamdan tek kod yaz, birden çok platformda takr takr çalışsın verimli olsn, olmuyor işte.

    Eee HSA'da nası olacak. Birincisi cillop gibi olmayacak. ikincisi, tutup kafana göre yazmayacaksın zaten. HSA guideları programın mesela native C'ye göre perf farkı olmasını engelleyip, aynı zmanda taşınabilirliğini arttırma amacı güdecek. Eee C vs. zatne bu amacı gütmüyor mu? Başta belki öyleydi, belki şimdi hala öyledir. Ama bi kod yazayım, ARM'da süper Intel x86'da süper olsun asla diymezsin. Araya compilerlar ve bunların iyileştirmeleri vs. girer. Sonra göreceğin bazı şeyler sonrasında kodu şöyle böyle değiştireyim dersin, hedef platformdan daha yüksek perf alırsın. Ama bu seferde taşınabilirliği azalmaya gitmeye, başka platformda verimi gitmeye başlar.

    Yani tam olarak işin içinden çıkışı yok.

    CL için ve AMD'nin eski-yeni donanımları için de bu böyle. CL ile 6970'e VLIW'e göre başka, GCN 7970 için başka yaklaşım sergilemen gerekir. Eski VLIW mimarilerde iyi çalışmayan bi sürü yaklaşım var mesela. O zman bi noktadan sonra o mimarileri kullanmamak lazım(e zaten kimse GPGPU için 6970 kullanmaz bu devirde)? Geriye AMD'nin bi tek şimdiki mimarisi, kartları kalıyor. Hepsinin de temeli hemen hemen aynı. Nvidia, Fermi-Kepler-Maxwell hepsi birbirinden farklı. Hala Fermi tabanlı Tesla kullanan süperbilgisayarlar faln var. Yani? Yanisi çözüm değil. O sistemde çalışanlar, o sistemin iyisi neyse ona göre yazıyorlar. Adam ordan kalkıp MAxwell GPU içeren bi clustera geçince, önceki bildiklerini öğrendikleri ile Maxwell'in getirdiklerini ve yeni sistemin farklarına göre yeniden yapılandırmak ve iyileştirerek yazmak zorunda kalacak. AMD tarafı şimdilik GCN'lerin hepsi aynı olduğundan sorun yok. Gerçi AMD'yi kullanan da yok, o açıdan ayrıca sorun yok ://

    AMD yeni mimari ile geldi diyelim. Şimdiki GCN'e göre olan cluster dolu ortalık, vatandaş buna uyum sağlamış. Yeni mimari geriye dönük-kapsayıcı bi yapıda olamazsa, olamadığı her adımda perf düşüşü olacak. Yukarda bahsettiğim Nvidia'lık durumlar başına gelecek.

    Xeon Phi'lerde, normal x86'yı al gel çalıştır diyor, o da dalga geçiyor tabi. Bi dual xeon'a göre hazırlanmış yapıyı optimize edersen Phi'ye göre, o zman belki 2x 5x 10x gibi değerler alabiliyorsun. İyi değil mi? iyi, ama kuru kuruya dual xeon için olanı aldın buraya göre yeniden derledin compile ettin, elinde hazır 10x perf verecek cillop gibi çıktın olmuyor. Hiç müdahele etmeden , hata da almadan derleyebilirsen (parallel studio faln ile), aradaki fark 5x'in çok altında kalıyor.

    Yani?

    Yanisi yok, karman çorman bi durum bi açıdan bakınca.




  • quote:

    Orijinalden alıntı: Rubisco

    IBM'in kılını kımıldatmaya dermanı yok. %70'den fazla finansal mühendislikle idare ediyor. Yıllardır hisse gerialımı vs. yapıyor ama bu, etraflıca bahsedemeyeceğim şekilde 2007'lerden beri bütün büyük firmaların sorunu. Büyük innovasyonları, büyük adımları belli büyüklüğün üstündeki firmalar rahat rahat yapamıyorlar. Çünkü riskleri fazla, götürüleri fazla, gelecek belirsiz, idare edenler şirket içi bürokrasiler karışık vs. vs. Nihayetinde tutup gelecek için fırsat yaratacak bilmem kaç milyar ilave yatırım yerine finansal mühendislikle idare etmeyi daha uygun görüyorlar. Geçmişte innovasyon merkezi gibi görülüp, piyasaya da yansıyan IBM bugün bütün umutlarını WAtson'a bağladı. Watson'dan bilmem kaç milyar bekliyorlar ama bu kaç sene boyunca yavş yavaş gelecek. Gelirleri çöktükçe çöküyor IBM'in. Zor tutundukları dallardan biri Power8'in bazı durumlarda iyi iş çıkartması ve yerine göre Intel'e göre daha çok tercih edilmesi (yaygın olamadan ama). Yine IBM'in bazı işler için tutup x86'lı serverlarını tavsiye etmesi vs. Watson 'ın getireceği milyarlar için bilmem kaç sene var. Bu yüzden Cloud-Watson-Power tarafındalar. Masaüstü vs. IBM için kesin öldü, bi dha geri gelemez. Olasılık isteyen varsa, önce Intel ile rekabet edebilecek kdar maliyet-satış fiyatı biçebileceği çip ile gelebilmesi laızm. Şimdiki şartlarda bu imkansız. Power8'i neye göre test ettiğine göre değişiyor ama, verim açısından Fx8350 bile rekabet edebiliyor diyeceğin yerleri bile var yani (kendi işinde kullanıp Intel'den 3x daha iyi diyeni de var, Cern'de belli işe göre test edip dediğim gibi kötü diyeni de var).



    quote:

    her ayrı oluşum için programı yeniden yazmak mı gerekecek ?


    Bu zaten yıllarca böyle. Sorunun temeli bu zaten. En bilineni ne Cuda. Cuda da bi program, Photoshop Premier vs. olsun örnek. Bunların adam gibi perf göstermesini istiyorsan Fermi için farklı kodlaman ve ayarlaman, Kepler için farklı, Maxwell için farklı ayarlaman lazım. Elinde bi yaklaşım var. Ya bu yaklaşımı farklı mimarilere göre iyileştireceksin, yada farklı mimariler için farklı tasarım yapacaksın. Tıpkı oyun gibi. render altyapısını belli bi çipe göre yaparsan, farklı çipe göre en iyi sonucu vermez. Zaten olmayan da bu. Dx ile genel kaidelere göre yazarsın. Sonra donanım driverı dx çıktısını alıp hedef platforma göre bazı iyileştirmelerden geçirir, sonra hedef donanıma göre çıktıyı o donanımda çalıştırır. Yani Fermi'de Kepler'de MAxwel'de çalışan şeyler hepten farklı. Ha peki oyunu Fermiye özel olarak, Dx üstünden yazdın. Kepler MAxwell'de de süper çalışacak mı? Çalışmayacak. Dx üstünden yazmış olsan bile bi yerden sonra su koyuverecek, çünkü temelleri farklı. Driver optimize ederek çıktı verirken , esas yapıyı yaklaşımı değiştiremez. E peki nolcak böyle her oyunu her driverda farklı donanıma göre mi optimize edecez ayrı ayrı yazacaz. Aynen öyle. Gerçeğin ta kendisi bu. Ee kim yapıyor bunu? Kimse. Eee nasıl peki düzgün çalışıyor? Adamlar oturuyor, popüler oyunlar için labda günlerce analiz yapılıyor. Bu analizlere göre programcının Dx'den istdiğini, veya programcının GPU firması ile paylaştığı kadarı üstünden belli iyileştirmeler yapılıyor. Bu iyileştirme dendiği zaman binaya dış cephe boya yapılacak, yukardan 3 kova boya dökecekler bina monalisa gibi olacak anlaşılıyor. Tek tek mozaikler halinde işlenecek o. dışardan eleman elinde ince fırça, tek tek ufak mozaik kadar alanı elindeki plana göre boyayacak. İŞte o küçük boyadığı alan, mesela 5x5cm'lik alan, programdaki belli bi kod yapısına karşılık geliyor. atıyorum bi fonksiyon olur, klas olur , özel bi yapı olur. Bu hashlenip kütüphaneye atılır. Oyunlarda shaderlar realtime compile edilip çalışmaz. Önce oyun-sahne yüklenirken compile edilir, sonra o gpu'da çalıştırılabilecek katman GPU'da realtime çalışır. compile sırasında driver shaderlarda veya oyunun yapısında belli kod yapılarını tanırsa (oyundaki kod yapılarını okuyup-hashleyip-kütüphanedekilerle karşılaştırıp), o yapı için olan iyileştirilmiş-değiştirilmiş devamyolunu ayarlıyor bunu çalıştıracan diyor donanıma. Dahası, programcının yazdığından tamamen farklı bişeyin gpu'da çalışmasını sağlayabiliyor. Daha önce de yazdım, Nvidia Driverı illegal CL-GL yapılarını kabul edip, otomatik düzeltip çalıştırabiliyor mesela(illegal = mesela bi overflow oluşacak, olduğu zaman bunun etksi ne ise bunu umursamayıp-etkisini sınırlayıp çalıştırıyor). GPGPU vs. için de aynı şeyler geçerli. Ama GPGPU programı oyun kadar çeşitli olmadığından ve oyunlardan daha yüksek paraya satıldığından, geliştricisi ile daha yakından ve o donanıma-API'ye göre çalışma imkanı daha çok olabiliyor. Sonuçta GPU'yu kullanabilen Photoshop alternatifi tonla program yok mesela.

    Bi geri gelirsem, farklı donanıma göre aynı programın farklı iyileştirmeleri patch şeklinde veya yeni versiyonda gelebiliyor. İyileştirme ile, yeni donanıma göre yeniden bi yapı-algo vs. oluışturup daha yeni versiyon da gelebiliyor.

    Ee işin içinden çıkılmaz bi yöne ilerlioz sanki? yıllardır böyle zaten. Cuda-Nvidia daha öndeydi, herkes Cudaya göre ve az değişen donanıma göre yazardı. Kepler geldiğinde yeni donanımda eski programı kullanmaya kalkanların canı sıkıldı. Donanmda GPGPU için problemli olan yanlar da vardı çünkü. Yani kabaca Fermi ile aynı sayıda iş yapabliyor gibi oluyor Kepler. Ee peki Keplere göre herşeyi yeniden yazsak ilerleme olmaz mıydı? Olurdu-oldu da ama 2x ile %20 arasındaki fark gibi. 580 vs. 780 arasında çok fark olmasını bekleyip dudak bükmek gibi.

    Yani bu işin temelinde var bu çatallanma olayı. Tek ortamdan tek kod yaz, birden çok platformda takr takr çalışsın verimli olsn, olmuyor işte.

    Eee HSA'da nası olacak. Birincisi cillop gibi olmayacak. ikincisi, tutup kafana göre yazmayacaksın zaten. HSA guideları programın mesela native C'ye göre perf farkı olmasını engelleyip, aynı zmanda taşınabilirliğini arttırma amacı güdecek. Eee C vs. zatne bu amacı gütmüyor mu? Başta belki öyleydi, belki şimdi hala öyledir. Ama bi kod yazayım, ARM'da süper Intel x86'da süper olsun asla diymezsin. Araya compilerlar ve bunların iyileştirmeleri vs. girer. Sonra göreceğin bazı şeyler sonrasında kodu şöyle böyle değiştireyim dersin, hedef platformdan daha yüksek perf alırsın. Ama bu seferde taşınabilirliği azalmaya gitmeye, başka platformda verimi gitmeye başlar.

    Yani tam olarak işin içinden çıkışı yok.

    CL için ve AMD'nin eski-yeni donanımları için de bu böyle. CL ile 6970'e VLIW'e göre başka, GCN 7970 için başka yaklaşım sergilemen gerekir. Eski VLIW mimarilerde iyi çalışmayan bi sürü yaklaşım var mesela. O zman bi noktadan sonra o mimarileri kullanmamak lazım(e zaten kimse GPGPU için 6970 kullanmaz bu devirde)? Geriye AMD'nin bi tek şimdiki mimarisi, kartları kalıyor. Hepsinin de temeli hemen hemen aynı. Nvidia, Fermi-Kepler-Maxwell hepsi birbirinden farklı. Hala Fermi tabanlı Tesla kullanan süperbilgisayarlar faln var. Yani? Yanisi çözüm değil. O sistemde çalışanlar, o sistemin iyisi neyse ona göre yazıyorlar. Adam ordan kalkıp MAxwell GPU içeren bi clustera geçince, önceki bildiklerini öğrendikleri ile Maxwell'in getirdiklerini ve yeni sistemin farklarına göre yeniden yapılandırmak ve iyileştirerek yazmak zorunda kalacak. AMD tarafı şimdilik GCN'lerin hepsi aynı olduğundan sorun yok. Gerçi AMD'yi kullanan da yok, o açıdan ayrıca sorun yok ://

    AMD yeni mimari ile geldi diyelim. Şimdiki GCN'e göre olan cluster dolu ortalık, vatandaş buna uyum sağlamış. Yeni mimari geriye dönük-kapsayıcı bi yapıda olamazsa, olamadığı her adımda perf düşüşü olacak. Yukarda bahsettiğim Nvidia'lık durumlar başına gelecek.

    Xeon Phi'lerde, normal x86'yı al gel çalıştır diyor, o da dalga geçiyor tabi. Bi dual xeon'a göre hazırlanmış yapıyı optimize edersen Phi'ye göre, o zman belki 2x 5x 10x gibi değerler alabiliyorsun. İyi değil mi? iyi, ama kuru kuruya dual xeon için olanı aldın buraya göre yeniden derledin compile ettin, elinde hazır 10x perf verecek cillop gibi çıktın olmuyor. Hiç müdahele etmeden , hata da almadan derleyebilirsen (parallel studio faln ile), aradaki fark 5x'in çok altında kalıyor.

    Yani?

    Yanisi yok, karman çorman bi durum bi açıdan bakınca.

    :)

    Pek iç açıcı değil.

    En iyisi bir programcı yazıyım gitsin diyecek.

    Şuan inadına AMD apu ları hedef alan bi kaç satır kod yazasım var ? Yoksa hiç maceraya gerek yok. Bilindik yoldan devam edelim mi diyeceğiz.




  • os_lnx kullanıcısına yanıt
    Numba'ya bakın. Yada Yeni Java'ya.

    Numba HSA destekli compiled Python gibi bişey. Matlab-Arrayfire niyetine, ama doğal olarak birz daha esnek.
  • quote:

    Orijinalden alıntı: Rubisco

    Numba'ya bakın. Yada Yeni Java'ya.

    Numba HSA destekli compiled Python gibi bişey. Matlab-Arrayfire niyetine, ama doğal olarak birz daha esnek.

    Çok teşekkür ederimk. Yol gösterici olacak.

    Kendi ihitaycım için küçük bir program yazmıştım bir kaç satırdan oluşan. O zaman için C# da. Şimdi hem java da aynı işi yapan bişey yazmak istiyorum hem c++ da. Bir kaç satırdan oluşmasına karşın hiçbir kısıtlama olmadığı için donanım kullanımı hat safyada oluyor bilgisayar yanıt vermez hale geçiyor ta ki işlem bitene kadar. İşlemin yaklaşık bir buçuk gün sürdüğünü hatırlıyorum. Hem daha hızlı harddiskler varken hem SSD ler yaygınlaşmışken işlemci yükünü azaltacak şekilde kodları yeniden düzenleyebilirsem daha iyi performan elde ederim diye düşünmüştüm.

    Yeniden teşekkür ederim.




  • ÖNce yaklaşım - algo.

    Prime analizi yapmak için mesela bi döngü açıp tek tek bütün sayılara böldürüp bakmak mesela en ilkel yaklaşım. Bunu en hızlı CPU'da, istersern multi thread ve direk donanım dili üstünden yaz, istersen GPU'ya paralel olacak bi yol bulup kas. Başlangıçtaki yaklaşımın sorunlu olduğundan , yaklaşımı değiştirmek yerine farklı yollara başvurmak ve bunların içinde zaman kaybetmek yanlış yol. tutup sieve etseydin, mesela 100 milyon prime'ı 2 3sn de bulurken, öbür en ilkel yaklaşım ile dünya kadar zman gerekiyor.

    Yani önemli olan en başta yaklaşım -> algo'yu uygun tutabilmek. Yeterince gelimiş bi yaklaşımı sonrasında çok çekirdek vs. den yararlanacak hale getirmeye çalışmk vs. vs.

    Intel'in de başkalarının da çeşitli paralel kütüphaneleri faln var.

    İş eğer GPU'da çalıştırmaya uyarlanabilrise öncelikle hazır matlab-arrayfire vs. gibi yaklaşımlara bakılabilir.

    http://www.hsafoundation.com/hsa-for-math-science/

    https://www.continuum.io/blog/developer/programming-amd-apus-numba

    burda HSA+Numba vs. NumPy var. Numba halihazırda NumPy'den daha hızlı. HSA ile yeterince bi ilave hızlanma oluyor yani. CudaPy'a göre de sanki daha kolay derli toplu gbi. Birilerinin işine yarıyabilir yani. APU olmadan harici kart vs. ile ne kadar oluyor hiç firkim yok. Vakit bulup kurcalmaak lazım.

    Daha pro forumlarda faln işine göre yardımcı olack çıkar yani. stackoverflow'a faln yazarsan mutlaka cevap alırsın sanırm.




  • Oyş dedim. klavyeye ağzımın suyu damladı onun sesiyle kendime geldim.Önün açık olsun AMD seviyoruz seni üzme bizi <3

    < Bu ileti mini sürüm kullanılarak atıldı >
  • http://wccftech.com/amd-zen/
    Yapılan testlerde artık zen mimarisinde darboğaz olmadığı gözlemlenmiş,güzel gelişmeler bunlar hepimiz için.



    < Bu mesaj bu kişi tarafından değiştirildi redoracle -- 1 Kasım 2015; 21:31:43 >
  • quote:

    Orijinalden alıntı: Rubisco

    ÖNce yaklaşım - algo.

    Prime analizi yapmak için mesela bi döngü açıp tek tek bütün sayılara böldürüp bakmak mesela en ilkel yaklaşım. Bunu en hızlı CPU'da, istersern multi thread ve direk donanım dili üstünden yaz, istersen GPU'ya paralel olacak bi yol bulup kas. Başlangıçtaki yaklaşımın sorunlu olduğundan , yaklaşımı değiştirmek yerine farklı yollara başvurmak ve bunların içinde zaman kaybetmek yanlış yol. tutup sieve etseydin, mesela 100 milyon prime'ı 2 3sn de bulurken, öbür en ilkel yaklaşım ile dünya kadar zman gerekiyor.

    Yani önemli olan en başta yaklaşım -> algo'yu uygun tutabilmek. Yeterince gelimiş bi yaklaşımı sonrasında çok çekirdek vs. den yararlanacak hale getirmeye çalışmk vs. vs.

    Intel'in de başkalarının da çeşitli paralel kütüphaneleri faln var.

    İş eğer GPU'da çalıştırmaya uyarlanabilrise öncelikle hazır matlab-arrayfire vs. gibi yaklaşımlara bakılabilir.

    http://www.hsafoundation.com/hsa-for-math-science/

    https://www.continuum.io/blog/developer/programming-amd-apus-numba

    burda HSA+Numba vs. NumPy var. Numba halihazırda NumPy'den daha hızlı. HSA ile yeterince bi ilave hızlanma oluyor yani. CudaPy'a göre de sanki daha kolay derli toplu gbi. Birilerinin işine yarıyabilir yani. APU olmadan harici kart vs. ile ne kadar oluyor hiç firkim yok. Vakit bulup kurcalmaak lazım.

    Daha pro forumlarda faln işine göre yardımcı olack çıkar yani. stackoverflow'a faln yazarsan mutlaka cevap alırsın sanırm.

    Yeniden teşekkür ederim. Tabiki en başından iyi tasarlamak lazım. Daha önce ikimizde bahsetmiştik bundan. Ancak bu küçük programı nasıl uygun hale getirebileceğim konusunda beni aydınlattığın için sağol. Umarım işe yarayabilir. Bi daha gözden geçirip bakarım. Konu apu. Bende buna eğilmek istiyorum biraz. Ancak biz bunu koştukça konu dağılacak o yüzden fazla konuyu dağıtmak istemiyorum. Ancak konuyla alakalı oldukça yazarım.




  • redoracle R kullanıcısına yanıt
    Canavar Kükrüyor

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Zen işlemcileri f/p başarılı olacak forever amd

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Umarım başarılı olur yoks inteldeki fiyat belirleme rahatlığı git gide büyür bir piyasada ne kadar çok rekabetci firma olursa tüketiciye okadar iyi yansır burda fanboyluk yapmaya hiç gerek yok

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • redoracle R kullanıcısına yanıt
    amd başarı olursa çok iyi olur ..yoksa meydan intele kalırsa çok kötü olur .. biz son kullanıcılar açışından
  • 
Sayfa: önceki 12345
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.