ÚJ DIRECTX KITERJESZTÉSEK HASWELL APU EGYSÉGEKHEZ

A két friss DirectX 11 bővítmény új lehetőségeket kínál a játékfejlesztők számára, de emellett a teljesítményre is jó hatást gyakorolhatnak.
Víg Ferenc (J.o.k.e.r)
Víg Ferenc (J.o.k.e.r)
2013. márc. 29. 10:01
Új DirectX kiterjesztések Haswell APU egységekhez

A Haswell APU egységek integrált videó vezérlőjével kapcsolatban egyre több adat érkezik: a héten például arra derült fény, hogy az egyes mobil APU egységek pontosan milyen Intel HD Graphics sorozatú videó vezérlőt alkalmaznak majd.

A Game Developers Conference alkalmával maga az Intel is szolgált némi újdonsággal, ugyanis a gyártó illetékesei beszéltek két új DirectX bővítményről, amelyek a Haswell APU egységek érkezésével válnak elérhetővé. Az egyik újítás a PixelSync nevet kapta, a másik pedig Instant Access névre hallgat. Lássuk, mit kínálnak az újítások!

PixelSync

A PixelSync egy hardveren és szoftveren alapuló megoldás, amellyel kiaknázhatóvá válnak az OIT (Order Independent Transparency - Sorrendtől Független Átlátszóság) eljárásban rejlő lehetőségek. Az OIT segítségével az átlátszó elemek gyorsan osztályozhatóak, így megfelelő sorrendben lehet őket lerenderelni, ami meglehetősen vonzó effektek létrehozását teszi lehetővé az egyes játékokban. OIT nélkül a játékfejlesztők lehetőségei limitáltak, ugyanis így csak meghatározott színpadfajtákat készíthetnek. Ez kemény problémát jelent, de megoldásával komoly lehetősége nyílnak a játékfejlesztés területén.

Annak ellenére, hogy az OIT eljárást általában a DirectX 11-es technológiához társítják, az mégsem minősül az API szolgáltatásának, pusztán egy olyan eljárásról van szó, amely a DirextX 11-es API segítségével engedélyezhető. Az Intel állítása szerint az OIT jelenlegi változatai határtalan mennyiségű memóriát és memória-sávszélességet igényelnek: a memória-sávszélesség igény a shader komplexitással négyzetesen skálázódik. Mivel a Haswell APU - és általában a többi IGP is - limitált memóriamennyiséggel, illetve memória-sávszélességgel gazdálkodik, így az Intelnek muszáj volt olyan megoldás találnia, amellyel kisebb memóriaterület és memória-sávszélesség alkalmazása mellett, hatékonyan implementálhatja az OIT eljárást.

A PixelSync esetében a hardveres oldal megteremtése mindössze annyiból állt, hogy a mérnökök egyszerűen engedélyezték a programozható blend műveleteket a Haswell APU esetében. A PC GPU architektúrák esetében az összes frame buffer művelet fix funkciós hardveren áramlik keresztül, méghozzá limitált rugalmasság mellett. Érdekes, de ez pont egy olyan terület, ahol a mobil GPU-k asztali társaik fölé kerekedtek: az Nvidia Tegra SoC egységeiben található GPU például felhasználja a pixel shader ALU-kat a frame buffer műveletek elvégzéséhez.

A Haswell APU esetében más a helyzet. Még mindig jelen vannak fix funkciójú renderelő egységek, viszont a Haswell már tartalmaz olyan hardverkomponenst is, amely lezárja és erőlteti azoknak a memória-hozzáféréseknek a sorba rendezését, amelyek a PixelSync bővítményhez kapcsolódnak. Azáltal, hogy a 3D-s renderelés egy kínosan párhuzamos problémává nőtte ki magát, az egymással fedésben lévő pixelterületeken dolgozó shaderműveletek esetében problémák jelentkezhetnek - jó példa erre az OIT algoritmus futtatása. A PixelSnyc lényege, hogy lehetővé teszi a szoftvernek, hogy az megmondja a hardvernek egy bizonyos kódrészlet esetében, hogy az azonos pixelterületen dolgozó shaderek feladatait rendezze szépen sorba, ne futtassa azokat egymással párhuzamosan. A sorba rendezés persze csak azoknál a pixeleknél lép érvénybe, amelyek átfedésben vannak egymással, úgyhogy a technológia a kód többi részét nem érinti, azaz a többi kód futása nem lassul. Ez a látszólag egyszerű megoldás lehetővé teszi a játékfejlesztők számára, hogy saját, egyedi frame buffer műveleteket készítsenek, ami új lehetőségek előtt nyit kaput.

A PixelSync szoftveres oldala az Intel saját OIT technológiájából ered, amely magas minőségű tömörítést használ annak érdekében, hogy az általa lefoglalt memóriaterület minél kisebb lehessen. Az algoritmus a működése miatt kiszámítható teljesítményt biztosít.

Az Intel állítása szerint a PixelSync technológiát két neves játékfejlesztő vállalat már biztosan alkalmazni fogja: az egyik a Codemasters, ami a GRID2-ben alkalmazza a PixelSync-et, a másik pedig a Creative Assembly, ami a Total War: Rome II esetében veti be az újítást.

InstantAccess

A második friss technológia az InstantAccess nevet kapta. Ez gyakorlatilag a Zero Copy eljárás inteles megfelelőjének tekinthető. Annak ellenére, hogy az Intel processzorokba ágyazott integrált videó vezérlői egy ideje már kínálnak egységes memóriatámogatást, amelynek keretén belül az IGP és a CPU ugyanahhoz a fizikai memóriaterülethez fér hozzá, a két egység mégsem rendelkezik közvetlen hozzáféréssel egymás memóriaterületeihez.

Amennyiben a GPU-nak olyasmivel kell dolgoznia, ami a CPU memóriaterületén található, akkor erről az adatról először másolatot kell készítenie saját memóriaterületére. A másolás folyamata időigényes és pazarló. Ahogy haladunk a valóban heterogén számítási rendszerek felé, úgy egyre inkább szükségessé válik, hogy mindkét processzor hozzáférhessen ugyanahhoz a memóriában tárolt adathoz.

Az InstantAccess segítségével az Intel grafikus eszközillesztő-szoftvere pointerrel jelölheti ki a GPU memóriaterületének azon részét, amelyhez a processzor közvetlenül is hozzáférhet. A CPU így gondtalanul dolgozhat a GPU-hoz tartozó memóriaterületen, és így elkerülhető a felesleges másolgatás és az abból fakadó teljesítménycsökkenés is. Amennyiben a CPU befejezte a feladatot, úgy a szóban forgó memóriaterületet ismét a GPU rendelkezésére bocsáthatja.

Az AMD is alkalmaz hasonló megoldást, ami még a Llano megjelenésével vált elérhetővé.

Hírlevél feliratkozás
A feliratkozással elfogadom a Felhasználási feltételeket és az Adatvédelmi nyilatkozatot.

33 hozzászólás

A komment írásához előbb jelentkezz be!
MZperX75
MZperX75
2013. ápr. 1. 12:00
#21

A HD4000 teljesítményével,nincs gond,

itt a gond a termék támogatással,skálázhatósággal és a gyatra driverekkel van.

A lemaradás itt fényévek sajnos.

Új HD4600-as egységben amit már demóztak is, 2x több számolóegység van de teljesítménye max 30-40% pluszt rejt ,hiába a dedikált 32M DDR ram az IGP-nek.

Ezt a 30-40% pluszt is csak Dirt3-ban tudja szerintem felmutatni.

Tehát mag a a grafikus csipp felépítése miatt rosszul skálázóduk,az AMD megoldása a piacon viszont a legjobban ,még az NV is szerintem beelőzi.

Míg az AMD minimum 3-5 évig ad támogatást egy egy Hardverere ,addig az Intel jó hogy 1 évig,valahogy vegyél újat stratégia.

Míg a piacon lévő Mobil Trinity egyszerre 3 kijelzőn Játék külön hanggal,a másik kijelzőn Film (FHD BD) a harmadik kijelzőn videó grabbolás megy ,vígan zsigerből addig az Intel örül hogy nem ,akadozik a legújabb driverével a játék ,mindezt magasabb fogyasztással.

Itt kérem szépen drivert kellene írni de rendeset ,minimum 3 év támogatással visszamenő időre.

thedeveloper
thedeveloper
2013. márc. 31. 6:25
#20

józsef m.: Tény, hogy az Intel IGP-k egyenlőre gyengék a többi megoldáshoz képest, ezt senki sem vitatja. De azt is meg lehet nézni, hogy miket lehet kihozni egy olyan játékból, ami pontosan tudja, hogy hogyan aknázhatja ki a hardver minden lehetőségét. Lehet, hogy egy AMD vagy egy Nvidia GPU számára egyszerűen végrehajtható művelet az Intel IGP-ken némi trükközést igényel. Az ilyen irányú fejlesztés pedig egyértelműen többletmunkát jelent a fejlesztőcég számára, ami a project végén már pénzben is számszerűsíthető.

Sok cég rendelkezik saját, vagy mások által gyártott játékmotorral. Ezek a "motorok" rengeteg kártyát ismernek és már induláskor ellenőrzik, hogy mivel van dolguk. Teszik mindezt annak érdekében, hogy az engine a lehető leggyorsabban fusson az adott konfiguráción.

Az ilyen játékmotorok (feladatai közé tartozik például a shader-ek konfigurálása, a maximális felbontás, élsimítás, stb.. meghatározása, ajánlott beállítások felismerése, és végül a legfontosabb, a renderelés is) egyáltalán nem ismerik az Intel vezérlőit, főleg a legújabbakat nem (pl.: HD2500, HD4000).

Ha ismernék, valószínűleg azon túl, hogy kiírnák a vezérlő nevét a játék beállításaiban, célzott utasításokat is tartalmaznának annak érdekében, hogy a vezérlő legtöbb jó tulajdonságát kiaknázzák.

Gondoljatok bele, azok a játékok, amik 2012 előtt jelentek meg (az Ivy Bridge megjelenése előtt), patch nélkül azt sem tudják, hogy mi fán terem mondjuk egy HD4000-es vezérlő. Elég valószínű, hogy ha pusztán a játék memóriamenedzsmentjét felkészítenék az IGP-kre, legalább 50, vagy akár 100%-os gyorsulást érnének el vele.

lacaa666
lacaa666
2013. márc. 30. 23:21
#19

thedeveloper ott a pont köszöntem ennyit erről.

thedeveloper
thedeveloper
2013. márc. 30. 21:06
#18

Vannak általános utasítások, amiket például a DirectX kínál, de vannak speciális műveletek is, amiket gyártóspecifikusan használhatnak a játékkészítők. Na, ez utóbbiakat egyáltalán nem használják jelenleg Intel IGP-khez, mert egyszerűen eddig nem volt rá szükségük.

Ahogy egy régi játék (pl.: Carmageddon) nem tud mit kezdeni a mostani VGA-kkal, úgy a jelenlegi játékok sem tudják hová tenni az Intel GPU-kat.

Ez a jövőben remélhetőleg változni fog, ahogy a fenti példa is mutatja.

Egyébként kicsit fordítva is működik. Nézd meg a nagy VGA gyártók driver frissítéseinek changelog-jait. Azért lesznek gyorsabbak a játékok egyes kártyákon, mert a játékfejlesztők nagyon szorosan együttműködnek a VGA gyártójával, egészen konkrétan meg tudják mondani, hogy milyen kód hatására mutatkozik lassulás. Ezt követően mind a játék fejlesztői (patch), mind pedig a VGA gyártója (új driver) módosítja a saját kódját annak érdekében, hogy közelebb kerüljön egymáshoz a kettő.

De persze mi motivál egy játékfejlesztő céget, hogy egy bizonyos hardverre felkészítse a játékot? Például az, hogy mennyire elterjedt az adott hardver. Magyarra fordítva, a célközönség mekkora részét veszítenék el azzal, ha nem támogatnák az adott platformot. Ha ez a szám elérne egy kritikus határt, akkor bevételkiesésük lenne az el nem adott termékből, tehát el kell kezdeniük optimalizálni az új hardverre is.

Ebben a szakaszban van jelenleg az Intel. 1-2 éven beül remélhetőleg a játékgyártók többsége felismeri majd, hogy érdemes együttműködni az Intellel a cél érdekében.

jozsefm
jozsefm
2013. márc. 30. 23:51

Eszmefuttatásoddal egy a baj. intel hardverre a játékfejlesztőknek nem fejleszteni kell, hanem visszafejleszteni.

thedeveloper
thedeveloper
2013. márc. 30. 19:48
#17

atti2010: Nem is mondtam, hogy jó ötlet lenne, csak azt, hogy már van olyan megoldásuk, ami mondjuk egy egyszerű, filmnézős, casual gamer gépben megállná a helyét.

Értem én, hogy nem fog egyformán szerepelni minden játékban, meg azt is, hogy valahol kifejezetten elvérzik majd. De a nagy gyártók esetén is erről szól a harc (pl.: TressFX). Az Intel még gyerekcipőben jár és a játékfejlesztők sem az ő kártyáikat veszik célba egy játék kódjának megírásakor. Biztos vagyok benne, hogy ha a mostani játékok fel lennének készítve Intel IGP-kre is, akkor nagy átlagban minimum kb. 10 FPS-t nyerhetnénk vele.

Például visszakanyarodva a cikkre: "két neves játékfejlesztő vállalat már biztosan alkalmazni fogja: az egyik a Codemasters, ami a GRID2-ben alkalmazza a PixelSync-et"

Tehát, ha nem csak két fejlesztő használná az Intel IGP driver adta lehetőségeket, akkor jobb eredményeket látnánk.

Én abszolút bizakodó vagyok, mivel volt olyan gépem, amiben csak GMA vezérlő volt... Szerintem kijelenthetjük, hogy az Intel elkezdett GPU-t fejleszteni és ez nagy szó.

atti2010
atti2010
2013. márc. 30. 19:59

Biztos vagyok benne, hogy ha a mostani játékok fel lennének készítve Intel IGP-kre is, akkor nagy átlagban minimum kb. 10 FPS-t nyerhetnénk vele.

Nekik kell felkészíteniük a hardvert és a drivereket elsősorban majd aztán a játékkészítők írnak rá játékot, ez fordítva nem működik hogy írjál játékot és majd írok hozzá drivert itt jön ki a 8-10 éves lemaradás ezeket a kódokat sem az AMD sem pedig az Nvidia nem fogja eladni nekik de lehet hogy nem is tudnák használni.

thedeveloper
thedeveloper
2013. márc. 30. 18:04
#16

Stark: "mert csak"? Inkább azért, mert elsősorban nem ez a cég fő profilja.

Valóban kicsit későn kezdtek el foglalkozni ezzel az iránnyal, de ha jól tudom, sem az AMD, sem az Nvidia nem tervez és nem is gyárt például SSD vezérlőt. Most akkor ők is "szarnak bele"?

"mindenre van bőven lé": Egy vállalatirányítás nem úgy működik, hogy "van lé mindenre". Piackutatás, megvalósíthatósági tanulmány, megtérülési terv, stb...

Egyszerűen úgy látták, hogy többet érnek például a CPU részleg fejlesztésével.

Terror: Az AMD ugyan kevesebb pénzből gazdálkodik, de nekik határozott terveik vannak a jövő technológiájával kapcsolatban. Nagyon bíznak a CPU + GPU integrációban, ők erre rendezkedtek be, ezért sikeresek az Atommal szemben a Fusion megoldásaik. Az ATI felvásárlásával pedig gyakorlatilag megvettek olyan erőforrásokat (licence-ek, mérnökgárda, stb..), amikkel óriási előnyre tettek szert a grafikai chip-ek fejlesztése terén.

Az Intel egyenlőre ilyet még nem tett, hanem inkább saját hibáiból tanulva, saját fejlesztőit alkalmazva próbál felnőni a feladathoz.

A GT3-at már akár önálló kártya formájában is kiadhatnák a low-end VGA-k közé.

atti2010
atti2010
2013. márc. 30. 18:15

A GT3-at már akár önálló kártya formájában is kiadhatnák a low-end VGA-k közé.

Ez hatalmas hiba lenne részükről, egyrészt az AMD és Nvidia kártyák tönkrevernék őket másrészt az APU-k fénykora következik az ilyen low end VGA-k el fognak tűnni, másrészt van egy nagyon nagy baj az Intel grafikai cuccokkal mégpedig hogy 1 játékban 30 FSP-t tolnak de másik húszban még 10 -sem de majd meglátod ha megjelenik a GT3, ilyen labilis cuccal nem lehet kiállni a VGA picra mert leégeted magad, adok is egy példát ott van a Minekraft népszerű játék amiben egy Trinity 60 FPS felett tolja a HD 4000 meg ugyanazon a felbontáson alig bír kipréselni magából 15 FPS-t, azért választották a GT3 bemutatóhoz a Dirt nevű játékot mert az kedvez a legjobban a GT3 architektúrának de nézd meg a többi játékban már el lesz veszve.

thedeveloper
thedeveloper
2013. márc. 30. 11:56
#15

Terror, Stark: Végül is valóban, van tapasztalatuk: csupa rossz... Amiből az akkori vezetés is azt a konklúziót vonta le, hogy nekik nem fekszik a GPU tervezés.

Igen, most viszont a piaci nyomás hatására kezdtek el komolyabban GPU-kat fejleszteni, és ehhez képest nagyon szép eredményeket érnek el, ami nem kis teljesítmény egy olyan cégtől, akik nem erre specializálódtak.

Hasonlóan érdekes lenne a helyzet, ha az Nvidia valamilyen csoda folytán megkapná az x86-os processzorok fejlesztéséhez szükséges licence-eket. Az első processzoraiktól is egyből egy Intel Core i7-es számítási teljesítményét várnátok el?

Ha mondjuk a desktop/notebook CPU piacon aktívabb szerepet vállalna a VIA és létezne még a Cyrix, akkor az ő termékeiket is élesen bírálnátok a piacvezető cégek termékeihez képest elmaradó teljesítmény miatt?

Csak gratulálni tudok a fikázódáshoz.

jozsefm
jozsefm
2013. márc. 30. 18:08

Sőt vezetik is...xDxDxDxD

Úgyhogy én se szólok többet rosszat róla.

Mellesleg ennyit arról mennyi köze van egy termék piaci részesedésének ,minőségéhez.

Crytek01
Crytek01
2013. márc. 30. 11:21
#14

Már csak az nvidia hiányzik erről a porondról! Jöhetne már ő is!

Stark
Stark
2013. márc. 30. 0:21
#13

Azért nincs tapasztalatuk, mert abból a 15 év GPU tervezésből 12 kb így nézett ki:

-Te Jani, ad ez képet?

-Ad.

-Akkor jó lesz, kész van.

És most az utóbbi kb 3 évben húztak bele, mikor már muszáj volt mert szorul a hurok.

thedeveloper
thedeveloper
2013. márc. 29. 23:29
#12

Terror, józsef m., sanyix: "15 éve terveznek grafikus chip-eket"? "Ebből 10 év: Larrabee"? "volt nekik ám valami ISA-s videokártyájuk is"?

Látjátok egyáltalán, hogy miket írtok? Nem értem, hogy a fent említett, kudarcba fulladt próbálkozások mögött ti hol láttok tapasztalatot.

Azt írtam, hogy nincs tapasztalatuk. Voltak elképzeléseik, de azok nem sikerültek.

Egy idézet a Larrabee project-hez kapcsolódó Wiki oldalról:

"Larrabee is the codename for a GPGPU chip that Intel is developing separately from its current line of integrated graphics accelerators. The chip was to be released in 2010 as the core of a consumer 3D graphics card, but these plans were cancelled due to delays and disappointing early performance figures"

Terror, az a facepalm mehet nyugodtan tükörben is magadnak. :)

Az Intel mérnökeinek fő szakterülete az x86-os processzorok tervezése. Egy másik, szintén mostani iPon-os hírben például olvasható, hogy volt nekik ARM divíziójuk is, de eladták.

Nincs olyan ütőképes mérnökgárdájuk GPU téren, mint a piacvezető gyártóknak. Mit nem lehet ezen érteni?

Terror
Terror
2013. márc. 30. 0:42

Nem, nem mehet magamnak. Te mit értesz tapasztalat alatt, ha nem azt, hogy jó ideje foglalkoznak valamivel? Amúgy a gpu-kat nem ugyanazok az emberek tervezik, akik a cpu-t. Eddig nem volt nekik fontos, most már az. Ennyi. De az nem igaz, hogy nincs tapasztalatuk benne.

sanyix
sanyix
2013. márc. 29. 21:24
#11

van az több is, volt nekik ám valami ISA-s videokártyájuk is.

thedeveloper
thedeveloper
2013. márc. 29. 19:00
#10

Nem értem, mi bajotok ezzel.. Az Intelnek alig van tapasztalata IGP fejlesztés terén, ehhez képest nagyon jól szerepelnek. Igen, valóban az utolsók a sorban, de kezdik behozni a lemaradásukat (elég csak a GMA nevű vezérlőkre gondolni, amik tényleg csak képet adtak).

jozsefm
jozsefm
2013. márc. 29. 21:09

Ebből 10 év: Larrabee...:S

Terror
Terror
2013. márc. 29. 14:27
#9

Az mondjuk dicséretes, hogy legalább már nem úgy állnak hozzá, hogy "ad képet oszt' jóvan". Az AMD intergált HD3200-asa után világossá válhatott, hogy ezt többé nem lehet ellazsálni.

jozsefm
jozsefm
2013. márc. 29. 14:55

Itt látszik ,hogy a pénz nem minden. Ennek a küzdelemnek, és költekezésnek a fényében kell értékelni az AMD féle ATI felvásárlást! Ráadásul ugye itt is rendelkezésre áll azért a múltkori összeborulás óta elég sok nV féle technológia. Nemhogy kifejleszteni, de még integrálni se olyan gyors és egyszerű, hiába a korlátlan pénzügyi lehetőség! Ahhoz hogy a fejlesztőgárda megértse működésüket, ugyanazokat a lépcsőket kell végigjárni, mint anno az AMD-nek.

sanyix
sanyix
2013. márc. 29. 14:21
#8

király, mostmár tud valamit az intel igp, amit mások már 10 éve tudtak :D Mondjuk eddig is hasonló volt a fejlődésük, mindig fejlődtek, 5-10 éves lemaradással :)

maláj
maláj
2013. márc. 29. 13:59
#7

valaki csúnyán kapta a helyesírás oktatást :D

Stark
Stark
2013. márc. 29. 13:21
#6

Dübörög ám a gépezet ezerrel.

Kicsit vicces hogy az ilyen bemutatókkal akarnak villogni, ebből inkább azt látni mennyire le voltak maradva eddig.

Inkább szép csendben sunyiban kéne beépíteniük, és kussolni róla hogy eddig nem volt ilyen.

jozsefm
jozsefm
2013. márc. 29. 13:41

Az öreg rókák tisztában vannak vele, a csecsemő meg mindenre rácsodálkozik.

Steven86
Steven86
2013. márc. 29. 13:10
#5

ez az Intel egy röhely :D xD xD

Terror
Terror
2013. márc. 29. 13:15

Ne használj olyan bonyolult szavakat, mint a röhej. Nem áll jól.

tibaimp
tibaimp
2013. márc. 29. 11:38
#4

Haladnak is, csak így tovább...

jozsefm
jozsefm
2013. márc. 29. 11:29
#3

Haladnak,elvégre évtizedes lemaradást kell behozni.:D

Terror
Terror
2013. márc. 29. 10:59
#2

Tehát bemutattak valamit, amit minden gpu tudott eddig is, kivéve azokat, amiket ők gyártanak. Elismerésem, komolyan.

Juliska
Juliska
2013. márc. 29. 10:23
#1

Az intel megint jó humorzsákként viselkedik. Bemutatják az OIT-t egy olyan kép mellé, ami nem használ rendezést az átlátszóság meghatározására. Nagy kacajok lehettek az előadáson. :)

Vissza az oldal tetejére