Hirdetés

Larrabee: újabb információmorzsákat hintett el az Intel

Az Intel új generációs grafikus processzorának fejlesztése a beszámolók alapján jól halad, azonban az újszerű koncepcióra épülő termék megjelenési idejéről még mindig nincs konkrét információ. Az SIGGRAPH 2008 konferencián meglehetősen szűkszavúan ismertették a részleteket a vállalat előadói (erről egy korábbi hírünkben már beszámoltunk). Persze az előadás óta sok idő eltelt, így nem meglepő, hogy újra felbukkant néhány részlet a Larrabeeről.

Régóta ismert információ, hogy a rendszer a Binned Rendering névre keresztelt technológiát használja majd a leképzéshez. Ez rendkívül fontos a Larrabee esetében, ugyanis a chip több processzormagból áll, amelyeket két ellentétes irányú, 512 bites, gyűrűs busz köt össze. Ez elsőre rugalmasnak hangzik, de az alkalmazott grafikai számítások memóriaigénye miatt könnyen túlterhelhető. Ennek következtében a chip működésének alappillére a gyűrűs memóriabusz használatának minimalizálása. Mielőtt tovább vizsgálnánk az Intel leképzési megoldását, érdemes megvizsgálni, hogy egy pixel számítása milyen problémákat vet fel.

Overdraw probléma

A mai grafikus motorok rengeteg olyan eljárást használnak, amelyek elsődleges feladata a felesleges számítások elkerülése. Ha egy nagy objektum több kis objektumot eltakar, akkor azok számítása felesleges, mert ez a képkockán nem fog plusz információt jelenteni. Erre manapság rengeteg algoritmus létezik, így megoldottnak tekinthető a probléma. A következő dilemma a nem látható poligonok eltüntetése. Teljesen egyértelmű, hogy egy virtuális alakzatnak csak az az oldala számít, ami az adott nézőpontból látszik. Első körben a különböző backface culling eljárások valamelyikét kell bevetni. Ezek alkalmazásával elvethetők azok a háromszögek, melyek normálvektorai a nézőpont irányvektorával 90 foknál nagyobb szöget zárnak be. Ezen a ponton már nagyon sok feladattól megkíméltük a grafikus processzort, de még mindig lesz olyan számítás, amelyiknek az eredménye később feleslegesnek bizonyul. Képzeljük el, hogy egy kisebb szikla részben elfed egy nagyobbat. Ilyenkor mindkét virtuális sziklát le kell modellezni, majd meg kell kezdeni a leképzést a nem látható poligonok eldobálásával. Igen ám, de a kisebbik szikla olyan háromszögeket is kitakar a nagyobb modellből, amelyek ugyan nem látszanak, de a backface culling nem tüntette el őket. Szakmailag korrekt megfogalmazással élve a háromszögek normálvektorai a kamera felé néznek. Ilyenkor nincs mit tenni, el kell kezdeni az objektumok textúrázását. Ezután sorra kell venni minden egyes háromszög pixelre vetített pontját, majd a megfelelő texelből, vagy texelekből – az alkalmazott szűrés szerint – ki kell számítani a képpont színét. Jelenleg a képkocka egy pixelére annyi képpont jut, ahány háromszöget érintett a pixelből kiinduló virtuális sugár. Nekünk persze csak annak a képpontnak az információja kell, amelyik a kamerához legközelebb álló háromszögből lett számítva. Itt jön a képbe a mélységpuffer (Z-buffer). Az a számítás a helyes, amelyik esetén a mélységteszt a legkisebb Z értéket adja vissza, a többi számítás eredményét egyszerűen el kell dobni. A mélységteszt meggyorsítására a mai grafikus kártyák már számos speciális optimalizációt használnak, így a teljesítményigény minimális, viszont a felesleges számításokat sok esetben nem tudják elkerülni.

Az előbbi magyarázat után visszatérhetünk az Intel megoldását vizsgálni. A kékek eljárása rendkívül hasonlít a PowerVR grafikus chipekben használt tile-based rendering működési elvére. A rendszer a kiszámítandó képkockát azonos méretű, több pixelből álló mozaikokra, szakmai néven tile-okra osztja fel. Egy Larrabee mag egyszerre egy mozaikot számol. Ezek méretét valószínűleg úgy állítja be a vezérlés, hogy a magokhoz kapcsolt 256 kB-os gyorsítótár kapacitása megfelelő legyen a memóriaelérések minimalizálásához. A leképzés megkezdése előtt meg kell határozni, hogy mely háromszögek érintik az adott mozaikot, mivel a számítás szempontjából csak ezek a poligonok számítanak. A háromszögeket mélység szerint egymás mögé kell rendezni, majd meg kell vizsgálni, hogy a mozaikban található képpontokból kilőtt virtuális sugarak mely háromszöget, esetenként háromszögeket metszik először. Ha minden megvan, akkor – az alkalmazott szűrésnek megfelelően – el kell végezni a pixelek színinformációinak kiszámítását. Az eredmény tökéletes, és mentes a felesleges kalkulációktól. A buktatók között azonban érdemes megemlíteni, hogy a mélységrendezés nagyon bonyolult hardveres felépítést kíván, és sok háromszög esetén akár lassabb is lehet a megfelelő sorrend felállítása, mintha egyszerűen kiszámolnánk a felesleges információkat. Persze az Intelnek a Larrabee esetében nincs más választása, mivel az adatbusz kulcsfontosságú szerepet játszik a rendszer működésében, így minden lehetséges eszközzel kímélni kell azt.

Fix funkciós egységek a Larrabeeben

A DirectX logikai futószalagja által megszabott feladatok több esetben is kielégíthetők fix funkciós egységekkel. Ilyen feladatok közé tartozik például a textúraszűrés, az interpolálás és a blending is. A Larrabee a textúrázási eljárások kivételével minden esetben csak emulálja a szükséges fix funkciós eszközt. Ez egyrészt jó, mert alapot teremt a szoftveres renderelő kialakítására, azonban a sebességre esetenként negatív hatással van, ami probléma, ha a konkurens hardverek speciálisan kiképzett célegységekkel rendelkeznek. A textúrázókat valószínűleg azért is építették a mérnökök a rendszerbe, mert hatékony teljesítményt csak így lehet elérni. A textúrázó csatornák várhatóan megfelelnek majd a DirectX 11 követelményeinek, azonban erről konkrét információ még nem látott napvilágot.

Érdekesnek ígérkezik tehát a Larrabee, azonban mindenképp megjegyzendő, hogy a DirectX futószalagját egy célhardver is tökéletesen kielégíti. Márpedig az általánosabb felépítés több tranzisztort és nagyobb magméretet követel, emellett a teljesítményre sincs pozitív hatással. Továbbra is fenntartjuk tehát egy korábbi cikkünkben leírt állításunkat, miszerint a számítógépes grafika számítása esetén az Intel elképzelése csak a szoftveres renderelés visszatértével fog igazi fényében tündökölni.

  • Kapcsolódó cégek:
  • Intel

Előzmények

Hirdetés