Maya
  • Magnificat
    #30266
    mert az olyan szintű és típusú párhuzamosítás, amit a gpu tud, nem olyan régóta van... nem is olyan régen még csak grafikai műveleteket tudott a gpu számolni, mára értünk el addig (azaz nem rég), hogy úgy alkották meg a gpu-kat, hogy legyen hozzájuk egy programozási felület (cuda vagy opencl), amivel általános kód is le tud futni. A CPU és GPU magok közt elképesztően nagy a különbség, a GPU csak bizonyos dolgokat tud számolni, de azt valóban nagyon gyorsan... Mivel még nem olyan régóta tud majd bármilyen kódot futtatni a gpu, és mivel még mindig nem alkalmas mindenre, ezért még nem rég vannak olyan render motorok (azokat is fejleszteni kell), amik gpu-val renderelnek. no meg emellett még mindig nem tudnak minden cpu által futtatható kódot futtatni (tudtommal), ezért annak helyét még jó ideig nem fogják átvenni.

    Végül pedig nem könnyű jó, párhuzamosítható kódot csinálni. Nem csak annyi, hogy adva van a kód, és azt mondom fusson minden magon vagy shader procin... Úgy kell felépíteni, megtervezni a kódot, hogy az jól párhuzamosítható legyen, és ennek a módszertana még nem olyan iszonyat régi... gondoljunk csak bele, 10 éve még 600 MHz-es PIII-as konfig 180k volt, akkor még úgy tűnt (sőt még jócskán utána is), hogy a procik majd 1-2-3000 MHz-esek lesznek eleinte, aztán majd jól felmennek 10 GHz-re is... de csak egy mag... aztán a gyártás során rájöttek, hogy egyre kevésbé tudják emelni az órajelet, mert nem bírják az elemek, nehezebb hűteni, stb... úgyhogy lett a párhuzamos feldolgozás, amivel utána meg kellett tanulni bánni programozás tekintetében is... és ez kb azóta volt, hogy én egyetemre járok, szóval végtelen tapasztalat nincs még mögötte... iszonyat koponyák dolgoznak rajta időről időre, hogy megkönnyítsék másoknak a párhuzamos kódok korrekt futtatását, de ettől még ez egy totál más gondolkodásmódot igényel...

    amúgy nem értem ezt a "ha egyszer nem erre lett kitalálva" dolgot... a kód lett elsőnek cpu-ra kitalálva...