Keresés

Új hozzászólás Aktív témák

  • Pikari

    veterán

    válasz orbano #112 üzenetére

    legrosszabb esetben szerintem kézzel bele tudod tenni, viva la unsecure.

    avagy
    a hal és az ő biciklije :D

  • Pikari

    veterán

    válasz orbano #108 üzenetére

    igen, egetverő nagyságrendű különbség nincs, és már volt, hogy a java volt vezető helyen, de gpgpuról lévén szó, ebben a topikban elsősorban ezt a kontextust vizsgálva a legjobb, ha az ember a többivel egyelőre nem is számol.

  • Pikari

    veterán

    válasz orbano #106 üzenetére

    azért ne felejtsük el, hogy a piacot a c/c++ univerzum uralja, annak meg úgyis mindegy, mire fordítod le

  • Abu85

    HÁZIGAZDA

    válasz orbano #100 üzenetére

    A Knights Corner annyira nem gond, mert az eleve accelerator HPC-be. Arra direkten fognak úgyis fejleszteni OpenMP-ben vagy MPI-ben mondjuk.
    Az Intelnek monopóliumot ad az x86. Ezért erőltetik oda is ahova nem előnyös. Az Intel előtt a kiépített monopólium fenntartása lebeg, vagyis a programokat az x86-hoz hardverekhez kell kötni. Ha valaha is belebuknak ebbe, akkor az azért lesz, mert makacsul ragaszkodnak az x86-hoz.

  • Abu85

    HÁZIGAZDA

    válasz orbano #94 üzenetére

    A HSA-nak sosem lesz marketingértéke, mert az a felhasználók felé nem fog látszani. A programozóknak jó, hogy egyszer megírnak valamit, és módosítás nélkül tudják a különböző hardvereken futtatni a kódot, ráadásul egyszerűbb lesz a munka is. Persze be lehet fizetni egy logót a programba, hogy mutassa ez bezza HSA, de nem hiszem, hogy az alapítvány pénze erre megy majd, nem lenne értéke. A cégek attól, hogy közösen értékelik a jövőt még ellenfelek a piacon, vagyis azon túl, hogy segítik a programozókat, mert ez mindenkinek az érdeke, a marketinget már saját vállra veszik. A HSA a felhasználók felé érdektelen lesz, és nem is lesz kommunikálva, mert nekik ezzel nem kell törődni. Persze élvezni fogják az előnyeit, de a többség nem fogja tudni, hogy a HSA miatt fut a program úgy ahogy.

    Az Intelnek minden olyan kezdeményezés rossz, ami a HSA alapkoncepcióját viszi, vagyis elfedi a fizikai ISA-k közötti határokat. Konkrétan a sátán műve a szemükben, mert az Intel a MIC projektben is az x86-tal operál. Ez pedig a tervezés szempontjából szenvedés. Azért tart ennyi ideig a Larrabee fejlesztése, mert az alapokat szolgáltató x86 ISA megalkotásánál még csak nem is volt téma, hogy lesz majd egyszer több mag egymás mellé rakva. Az egész rendszer nagyon mereven kezelik a memóriaműveleteket és a koherenciát, mivel úgy van kialakítva, hogy egy magot szolgáljon, nem volt igény többre, amikor az egészet kreálták. Persze szerencsére valamennyire rugalmas a dolog, így pár szálig azért elevickél, de nagyon sok szálat már érez. Az Intel ezért szopott be három Larrabee-t, mert az x86 egyszerűen túl kötött ahhoz, hogy egy nagyon sokmagos x86-os proci skálázódjon. A GPU-kat eleve úgy tervezik, hogy a skálázódás legyen az elsődleges szempont, és ezért a rendszer minden elemében megteszik a szükséges fejlesztéseket. Ezért változik sokszor - még gyártón belül is - a GPU-architektúrák ISA-ja, mert rugalmasnak kell lennie mindig. Ha nem elég rugalmas, akkor a koncepcionális működés veszik oda, vagyis értelmetlen lesz a termék, lásd Larrabee 1-2-3. A Knights Corner tulajdonképpen a negyedik nekifutás. A Larrabee név eltűnt, helyette lett MIC. Történt egy pár jelentősebb változtatás a rendszerben, amivel lényegében megszűnt az x86-os processzorokkal való bináris kompatibilitás. Ez a skálázás alapvető érdeke volt, így meg kellett lépni. A memóriamodellre rengeteg trükk került elő. A gathert és a scattert is meg kellett reszelni, ahol a korábbi megoldások elvéreztek. Erre talált az Intel egy kvázi értékelhető megoldást: "Programmers should always enforce the execution of a gather/scatter instruction to be re-executed (via a loop) until the full completion of the sequence (i.e. all elements of the gather/scatter sequence have been loaded/stored and hence, the write-mask bits all are zero)." - nem szép, de ha így lehet biztosítani a működést, akkor ez van ...
    A legfájóbb viszont a skálázáshoz bevetett tranyó mennyisége. Ez óriási. Hihetetlen méretű a Knights Corner L2 cache mérete, és az Intel fel is hívja rá a figyelmet, hogy a programozásnál is ügyelni kell arra, hogy a magok munkája a hozzájuk rendelt L2 tárra korlátozódjon. Kvázi a feladatszeleteket úgy kell kialakítani, hogy beférjen a cache-be. Nem véletlen, hogy az SRAM cache-t le akarják cserélni, mert amerre ők mennek, ott ez többmilliárd tranyós extraként fog előjönni a konkurencia jóval korszerűbb megoldásaival szemben. Nyilván az x86-hoz való makacs ragaszkodásnak tranyóban kell megfizetni az árát. Az Intel persze jelzi, hogy csak 2%-os extra az x86, de nem konkrétan az ISA dekódolásához szükséges tranyóval van a baj, hanem azzal, hogy amikor tervezték a memóriamodellt, akkor fel sem merült, hogy valaha is terveznek brutálsokmagos x86 rendszert. A dekódolás maga az lehet csak +2%, de a skálázás biztosítása az már milliárdos mértékű extra tranyó. Nem véletlen, hogy a Knights Corner működésbeli koncepcióját senki sem követi a GPU-t, vagy acceleratort tervező, nagy tapasztalattal rendelkező vállalatok közül. Nem azzal van a baj, hogy nem kivitelezhető, hanem a kivitelezhetőség árával. Na most, ha a HSA-t erősíti az Intel, akkor ezt hiába szenvedik el, mert az x86-ot a HSA mellett csak a kirakatba lehet helyezni, de másra igazából nem lesz jó.

  • dezz

    nagyúr

    válasz orbano #94 üzenetére

    Azok után, hogy az AMD64 átvétele helyett is megpróbáltak először saját kiterjesztést csinálni (nem az IA64-re [Itanium vonal] gondolok, hanem saját, az AMD-ével nem kompatibilis x86_64 megoldásra, csak a MS nemet mondott, kétfélét nem voltak hajlandóak támogatni), illetve a HyperTransport licencelése helyett is csináltak egy szinte teljesen ugyanolyat (QPI), csak hogy elkerüljék a látszatát is, hogy az AMD-t követik?

  • Abu85

    HÁZIGAZDA

    válasz orbano #86 üzenetére

    Az 1.0-s specifikáció a munkacsoportnál van. Az AMD, az ARM, az ImgTec és nemrég a Vivante elfogadta (bár utóbbi cég nem tehetett mást, mert nem founder tag :D ). A Samsung és a Texas Instruments ül rajta. Ők most dolgoznak még két kiterjesztésen, amit szeretnének, ha elfogadna a munkacsoport. Ezzel elvileg nem lesz gond, de nem biztos, hogy az 1.0-hoz megvárják azokat, mert még az év vége előtt zárni fogják a speckókat, és akkor majd a következő körbe kerülnek be.
    A CodeXL-be fog bekerülni az AMD-nél. Ennek a bétája már elérhető. De amúgy, ha OpenCL vagy C++ AMP alkalmazást írsz, akkor az automatikusan kihasználja majd a HSA előnyeit.
    Az Intel az sosem fog belépni semmilyen nyílt kezdeményezésbe, ami elmossa a határokat a fizikai ISA-k között. Nekik mindegy, hogy HSA vagy más az infrastruktúra, maga az "írd meg egyszer és futtasd bárhol" koncepció kedvezőtlen számukra. A HSA-val még nem lenne bajuk, hiszen ők is tudják, hogy a programozóknak kell valami egyszerűbb infrastruktúra, azzal az alapgondolatával van a gond, hogy a HSA-hoz hasonló koncepcióban szart sem ér az x86, sőt, az őskövület alapok miatt inkább hátrány. Az Intel választása nagyon egyszerű jelenleg. A HSA széttépi a monopóliumukat, vagyis ugyanoda vezetne, ha beállnak támogatni, vagy esetleg nélkülük elterjed. A cél tehát ellene dolgozni. Persze a fejlesztőket nehéz lesz meggyőzni, hogy miért jó nekik legalább egy tucat cég architektúráira külön dolgozni, mint szimplán a HSA-t használva egyszerre mindet lefedni. Ez lesz a kemény dió. Főleg azután, hogy a HSA-t úgy módosították utólag, hogy legacy módban is fusson, vagyis nem kell egy cég direkt támogatása ahhoz, hogy egy HSA-ra írt program elinduljon az adott hardveren. Többféle futtatás lehetséges a HSA alkalmazásoknál, de olyan alternatívát nem ismer az 1.0-s specifikáció, hogy nem fut. Ezzel tényleg WORA az egész elv, mert még támogatnia sem kell az Intelnek. Persze nyilván a támogatás hiányának lesz sebességáldozata, de az programfüggő, hogy mekkora.

  • Abu85

    HÁZIGAZDA

    válasz orbano #66 üzenetére

    Pont ezért csinálják a HSA-t, hogy ez ne legyen gond a programozó oldalán. A hardverek közötti különbségeken majd dolgozik a runtime és a finalizer. Johan Andersson is azért van oda érte, mert amit ezzel megír az mindegy, hogy milyen hardveren fut. A HSA még legacy kompatibilítást is kínál, vagyis ha nincs HSA SS a gépen, akkor fordít egy működő legacy kódot.

  • Löncsi

    őstag

    válasz orbano #51 üzenetére

    Persze, ha egyszerű a kód akkor sima a dolog...

  • Pikari

    veterán

    válasz orbano #47 üzenetére

    azzal nem sokra megyek, tekintve hogy el kellene futnia a cuccnak máshol is, nem csak nálam :D

Új hozzászólás Aktív témák

Hirdetés