Hirdetés

2024. május 2., csütörtök

Gyorskeresés

Hozzászólások

(#51) DriderG


DriderG
tag

Lehetne valamivel gyorsabb, de szerintem akkor is közvetettebb a feldolgozás menete, mint konzolon, ott ugyanis nincsenek korlátozva az átviteli sávok, közvetlen kapcsolat van GPU-CPU között, ami az adatmozgatást megkönnyíti, ráadásul nem kell annyi, és olyan méretű driver minden eszközhöz, hanem mindent megpróbáltak a gyorsaság érdekében hardveresen implementálni. (pedig ott is van valamiféle API, amin keresztül elérik a hardvert, nem hiszem, hogy assembly-ben írnák a grafikus motort) Egy PC-n egy nagy étvágyú oprendszer is ott figyel, míg konzolnál max. egy 20 megás FW van, ami a menürendszert tartalmazza és éri el a perifériákat/memóriakártyát/vinyót. Ezért van szerintem az, hogy hiába egy erős gép X1950 XTX-szel, nem fogja úgy futtatni pl. a Star Wars TFU II-t, mint egy X360, sem egy GeForce 3 Ti a Halo 2-t.

Egyébként nem is tudtam, hogy változott a VLIW minta a 6-os sorozatú radeonon. Ezek szerint a szuperskalár feldolgozóegységek csak 3 komplex+1 egyszerű utasítás végrehajtására képesek? Lehet, hogy ezzel is gyorsítani akartak a folyamaton, hogy gyorsabban kódolja le a mintákat a driver.

(#52) Abu85 válasza Termigáßor (#49) üzenetére


Abu85
HÁZIGAZDA

Ha natívan programozod a hardvert, akkor nincs szükség driverre. Ahogy Johan Andersson mondta a GDC11-en: The best graphics driver is no graphics driver. :)

Igazából ezt az egész dolgot nem Richard Huddy találta ki. Már régóta téma ez. Richard Huddy csak hangot adott ennek, hogy lássa a reakciókat.

[ Szerkesztve ]

Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

(#53) GeryFlash


GeryFlash
veterán

Az OpenGL-t kifejleszti? A mostani kártyák melyik opengl verziót támogatják?

[ Szerkesztve ]

Hi, i'm new to APHEX TWIN, so i was wondering how much the IQ requirements was to enjoy his stuff. and understand all the underlying themes, because its really complex stuff. I have IQ of 119 but i heard that you need atleast 120 is it true?

(#54) Abu85 válasza GeryFlash (#53) üzenetére


Abu85
HÁZIGAZDA

A Khronos fejleszti. A mai generációk az OpenGL 4.1-et támogatják.

Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

(#55) mrhitoshi


mrhitoshi
veterán

Magyarul a PC-s kompatibilitás öli meg saját maga elől a PC-s játék ipart. Vicces, és egyben eléggé furcsa helyzet. Lehet ezért az üzletpolitikát okolni, de a PC legnagyobb ellensége saját maga. Úgy lett kifejlesztve, hogy kompatibilitás terén maximálisat nyújtson és ez is lesz a veszte a PC-s játék iparnak. :DDD :U

PS4

(#56) ddekany


ddekany
veterán

Nem világos, hogy itt egy eredendő gondról van szó, vagy csak olyanról aminek megoldása nagyon nagy befektetés lenne. Mert, nem lehetne kitalálni valami magas szintű GPU programozási nyelvet, amit a videókártya driver a program első indulásakor "natívra" fordít? Akkor aztán olyan hw specifikus trükköket alkalmaz, amit csak akar. Tisztába vagyok vele, hogy magas szintű nyelveket nehéz jól alacsony szintűre fordítani (a kézi optimalizációhoz képest), de másfelől pont hogy magas szintű nyelveknél van erre jobb esély ha a cél platform nagyon sokféle, mert a fordító jobban "érti" hogy mit akartál elérni, és mert nem kötsz ki számára alacsony szintű részleteket, ezzel megkötve a fordító kezét. Egy ilyen magas szintű nyelv is tulajdonképpen egy API... csak más megközelítésű, mint a DirectX vagy OpenGL. Azaz, amit mondok az az, hogy tán az "API" megközelítésének radikális megváltozótátásával ez a vízfej lényegtelen mértékűre csökkenthető.

[ Szerkesztve ]

(#57) Perillustris válasza misx (#1) üzenetére


Perillustris
senior tag

ha jóval kevesebb hardvert nyomnának ki, könnyebben menne a dolog

Hát, most hogy jóval kevesebb üzemanyag fogy, kevesebb a balesetek száma, s kevesebb autó is romlik el. Értem, amit írsz, de nem ez a jó út.

Perillustris

(#58) ddekany válasza mrhitoshi (#55) üzenetére


ddekany
veterán

"Magyarul a PC-s kompatibilitás öli meg saját maga elől a PC-s játék ipart."

A kompatibilitás miatti vízfejért cserébe kötetlenebbül, innovatívabban lehet fejleszteni a GPU-kat. Szóval nem vagyok benne biztos, hogy akár csak sebességben végeredményben nem éri ez meg.

(#59) mrhitoshi válasza ddekany (#58) üzenetére


mrhitoshi
veterán

Már maga a messze menő kompatibilitás is fejtörést okoz a legtöbb átlagfelhasználónak, így aki teheti konzolt vesz. Cserébe lehet nem olyan erős a masina, viszont nem kell bajlódnia a telepítgetéssel stb.. + exkluzív játékokhoz is hozzájut, és még lehetne sorolni egy konzol előnyét, ami PC-s körben hátrány, mintsem előny. Szóval szerintem attól, hogy 20x erősebb egy PC a konzolnál, attól még nincs nyert ügye.

PS4

(#60) julius666 válasza smkb (#2) üzenetére


julius666
addikt

Teljesen egyetértek, hardverközeli programozásról beszélni egy ilyen széttöredezett platformon vicc. Az ürge inkább menjen lobbizni az MS-hez hogy a köv. DX API biztosítson alacsonyabb szintű elérést, ne ilyen nevetséges marhaságokat nyilatkozzon.

A cikkhez: azt valaki igazán elmagyarázhatná, hogyan javítana azon a platformosodás vagy a cloudosodás, hogy a kód nagy részét meg kéne írni több platformra is, nem értem hogyan került a cikkbe. :U

Jó látni hogy valaki gondolkodik is mielőtt hozzászól nem csak nyomja a mantrát mert AMD-s mondta, de közben nem ért hozzá. :)

(#61) Abu85 válasza julius666 (#60) üzenetére


Abu85
HÁZIGAZDA

A platformokkal kevesebb lesz a lehetséges konfiguráció. Most jelenleg túl sok lehetőség van a CPU-GPU mixelésével. Ennek egyszerűsödnie kell, ha valóban erre akarunk menni. Mivel natív támogatásról lenne szó, így minden lehetséges hardverhez meg kell írni a rendert. Minél kevesebb ilyen van, annál könnyebb a munka.
A Cloud az csak egy másik lehetőség a problémára. Ezen nem javít, csak opció arra indulni, mert az API az korlátozni fog.

Nem Huddy ötlete ez. Ő csak elméleteket vázol fel/hirdet ki a problémákra. Johan Andersson (Frostbite motor) is reagált erre (láthatóan támogatja):
I've been pushing for this for years in discussions with all the IHVs; to get lower and lower level control over the GPU resources, to get rid of the serial & intrinsic driver bottleneck, enable the GPU to setup work for itself as well as tear down both the logic CPU/GPU latency barrier in WDDM and the physical PCI-E latency barrier to enable true heterogeneous low-latency computing. This needs to be done through both proprietary and standard means over many years going forward.

I'm glad Huddy goes out and in public talks about it as well, he get's it! And about time that an IHV talks about this.

This is the inevitable, and not too far, future and it will be the true paradigm shift on the PC that will see entire new SW ecosystems being built up with tools, middleware, engines and games themselves differentiating in a way not possible at all now.

- Will benefit consumers with more interesting experiences & cheaper hardware (more performance/buck).

- Will benefit developers by empowering unique creative & technical visions and with higher performance (more of everything).

- Will benefit hardware vendors with being able to focus on good core hardware instead of differentiating through software as well as finally releasing them and us from the shackles of the Microsoft 3 year OS release schedule where new driver/SW/HW functionality "may" get in.

This is something I've been thinking about and discussing with all parties (& some fellow gamedevs) on different levels & aspects of over a long period of time, should really write together a more proper blog post going into details soon. This is just a quick half-rant reply (sorry)

[ Szerkesztve ]

Senki sem dől be a hivatalos szóvivőnek, de mindenki hisz egy meg nem nevezett forrásnak.

(#62) julius666 válasza ddekany (#56) üzenetére


julius666
addikt

A shading nyelvek (ilyenje mind az OpenGL-nek, mind a SX-nek van) elég rég óta már így működnek.

Amúgy meg a driver az API hívásokat is gépi kódra fordítja, vagy szerinted pure C/C++ kód fut a hardveren? :F

(#63) DemonDani


DemonDani
addikt

micsoda megállapítások istenem :D szabvány ami limitál :DDD , hihetetlen, nagyon okosak ezek a bittech amd :F dolgozók :U

[ Szerkesztve ]

NEM FIZETETT REKLÁM! >>armegoszto.hu<< Folyamatosan friss akciók.

(#64) julius666 válasza Abu85 (#61) üzenetére


julius666
addikt

A platformokkal kevesebb lesz a lehetséges konfiguráció. Most jelenleg túl sok lehetőség van a CPU-GPU mixelésével. Ennek egyszerűsödnie kell, ha valóban erre akarunk menni. Mivel natív támogatásról lenne szó, így minden lehetséges hardverhez meg kell írni a rendert. Minél kevesebb ilyen van, annál könnyebb a munka.

A platformosodás nem igazán szűkíti a piacot. A processzorokkal akkora probléma eddig nem nagyon volt, azok viszonylag egységesnek számítottak (x86), az nVidia ARM-es platformja pont hogy jobban bezavar a képbe. Attól hogy egyfajta processzor mellett leszűkül a lehetséges GPU típusok köre, még nem jelenti azt hogy nem kéne a többire is megírni a kódot hogy fusson. Pontosabban ha platfrom-only játékok jelennének meg, azoknál előnyt jelentene, de attól meg az ég óvja a PC-s játékipart, az a totális halálát jelentené.

A Cloud az csak egy másik lehetőség a problémára. Ezen nem javít, csak opció arra indulni, mert az API az korlátozni fog.

:F

Az idézethez:
This needs to be done through both proprietary and standard means

A csóka amúgy nekem úgy tűnik, pont arról beszél hogy egy standard, hardverközelibb, rugalmasabb API-t kéne kifejleszteni.

(#65) Franklin válasza Abu85 (#41) üzenetére


Franklin
addikt

Csak nekem tűnt fel, hogy a videóban a robot lépéshangja egy-az-egyben a Quake3-as gránátvető hangja? :-) (00:19-től)

(#66) ddekany válasza julius666 (#62) üzenetére


ddekany
veterán

"Amúgy meg a driver az API hívásokat is gépi kódra fordítja, vagy szerinted pure C/C++ kód fut a hardveren? :F"

Dehogy hiszem... a szándékosan idézőjeles "natív" alatt azt értettem, amit az AMD-s illető mondott, hogy kihagyod az absztrakciós réteget (ami DirectX vagy OpenGL). Azaz, arra gondoltam, hogy közvetlenül a videokártya memória területére irkálna a lefordult program, nem pedig DirectX eljárás hívásokon keresztül és DirectX-specifikus adatszerkezeteken át kommunikálva tenné ezt. Mert gondolom ebből adódik az overhead, amiről itt szó van, de szóljatok ha nem. De ezt a fordítás nem előre végezné el a szoftver készítője, hanem a driver végezné el a kliens gépén. Mert a driver ismeri, hogy mit hogy jó csinálni adott hardveren. És így persze a program készítője soha nem is fér hozzá közvetlenül a hardverhez, továbbra is csak a driver teheti ezt, és az absztrakciós réteg technikailag mégis ki lett iktatva.

[ Szerkesztve ]

(#67) GOro.hu


GOro.hu
csendes tag

Már az OpenGL - pontosabban a Khronos Group - is régóta üldözi az elavult 'rögzített funkcionalitású' feldolgozóegységhez kapcsolódó utasításokat, valamint a gyártóspecifikus implementációkat. (így kényszerültek a gyártók, a driver-ben eszközölni okosításokat) Amúgy is már jó-ideje a gyártók által írt shader programok szimulálják a régi feldolgozóegység működését, ezáltal lehetővé téve, hogy még a régi trend szerint készült alkalmazások is működjenek (valamint sokszor nem a játék fejlesztői által írt shader-program fut le, hanem egy mondjuk úgy hogy 'manuálisan, direkt optimalizált' program). A konkrét natív programozás ebben a kontextusban bullshit. Nem tekinthető technológiai előrelépésnek mint az SM amit még nagyrészt üdvözítve fogadott a szakma, A halandó kezdő fejlesztők pedig fogták a fejüket, és tűzre dobták könyveiket.

Valaki már említette Repi GDC-s nyilatkozatát, illetve megtekinthető a prezentáció is, hogy mit kellet latba vetniük a PS3-as Frostbite továbbfejlesztésén, csak hogy játszható legyen majd a BF3. Mindez jelentősen visszaveti a fejlesztés ütemét, a határidőket pedig a kiadók szeretnék betartatni, amit csak a többi platform, és az egész játék minőségének rovására lehet megtenni. (valamit az eddigi játékok supportjának visszavágásával) Az egész pedig onnan indul, hogy hát mára már sovány a PS3-ban található grafikus erőforrás.

sx,dx,x:read

(#68) ddekany válasza Abu85 (#61) üzenetére


ddekany
veterán

"Most jelenleg túl sok lehetőség van a CPU-GPU mixelésével."

Ez miért gond? Két független dolognak tűnik nekem... Ha a GPU-t közvetlenül érd el, akkor eltekintve a shader nyelvektől (amiket eleve nem érint a CPU típusa), C-t C++-t vagy ilyesmit használsz, nem? A C/C++ meg lefordul x86-a is, ARM-ra is, MIPS-re is...

(#69) UnSkilleD


UnSkilleD
senior tag

sztem 5-10 éven belül a szoftver rendernek van létjogosultsága

"Az internet olyan, mint az MTV: annak idején az MTV nagyon trendi volt, aztán hirtelen elavult” - Prince

(#70) hohoo válasza ddekany (#66) üzenetére


hohoo
senior tag

Szóval a mostani JIT szerű grafikus apizgatás helyett. gpu gépi kódra compileolt grafikára gondolsz?

Egyébként az hogy carmack aszonta hogy most a dx11 jó, az nem jelent semmit. Egy fejlesztő aki valamikor összehozott valamit, és elég rég óta semmi nincs... na meg az utóbbi időben eléggé szélkakaskodik....

Én arra emléxem, hogy régebben sok játék jött opengl és directx módban, és bizony opengl módban mindig sokkal (10%+) gyorsabban futottak a cuccok vagy szebbek voltak. Tapasztaltam ezt voodoo2-n, geforce2-n, radeon 9600-on, és hd3870-en is, pedig állítólag az ati opengl driver nem is olyan jó... Az xboxon kívül is minden opengl-t használ. Opengl megy minden plaformon, shader5-el ha van (xp-n is), nem úgy mint a dx11, és a többi...

[ Szerkesztve ]

T-home extra csomag monopolterületen 6500 ft/hó, versenyterületen ahol Digi vagy UPC is van pedig 2990 ft/hó. Köszönjük!

(#71) julius666 válasza hohoo (#70) üzenetére


julius666
addikt

Szóval a mostani JIT szerű grafikus apizgatás helyett. gpu gépi kódra compileolt grafikára gondolsz?

Nem, ő pont JIT-ről beszélt.

(#72) Z86


Z86
őstag

Az AMD Fusion fantázianevű projektje nem valami ilyesmiről szól? Mármint egymással teljesen kompatibilis elemekből felépülő, különböző teljesítményszintű platformok megvalósításáról?
Abba az elgondolásba ez szépen beleillik.

(#73) con_di_B


con_di_B
tag

Amiről a cikk beszél, az minden API-ra igaz lesz, az overhead nem egy megkerülhető fogalom. Az OpenGL-nek valóban kárára vált a visszafelé kompatibilitás, viszont fontos tudni mellé, hogy egy ideje már be van vezetve egy deprecation model, amivel fokozatosan kikopnak az API-ból a régi megoldások, tehát ezáltal szálkásodik maga az API.

Ezen felül, az OpenGL-nek van egy beágyazott rendszerekbe szánt változata, az OpenGL ES, ami eleve egy "vékonyabb" API, és amennyire én tudom, az emlegetett OpenGL-es konzolokon, hordozható eszközökön eleve ez van. Konkrétan ennek az irányába konvergál az asztali OpenGL 4 is, és a WebGL is ehhez képest került meghatározásra. Az, hogy vékonyabb az API, ott jön ki, hogy ha egy API minél kevesebb emulált funkciót kínál, annál sanszosabb, h a fejlesztő ténylegesen hardverközeli programot ír. A másik fontos szempont, hogy kisebb API-ra könnyebb "pehelysúlyú" drivert írni.

Magára a cikkre reagálva: nyilvánvalóan igaz technikailag nézve, de az nagyon erős erős csúsztatás, hogy a draw call-ok számával lehetne emelni a grafikai színvonalat. 2000-hez képest 20 000 draw call nem jelent feltétlenül jobb grafikát, pusztán rosszabb kötegelést (batching). Olyan API-t kell használni, és olyan könyvtárakat, amik nem rejtik el a programozó elől a kirajzoló utasításokat, és akkor kézben lehet tartani a kötegelést. Ez természetesen nem pusztán a renderelő szubrutinon múlik, eleve olyan modellekkel kell szolgálni, lásd modell és pályaoptimalizáció.

A D3D 10 óta ott is elmentek a lightweight irányba, de nagyon lehet látni, h még a DX 10 mód is eléggé ilyen prémium dolog a játékokban, és a D3D 9 az alap ami tuti h gyorsra meg van írva, szóval azon a fronton nagyon bátor dolog volt a kompatiblitás elhagyása, de láthatjuk is, h tetűlassú migráció lett az ára.

Egyébként az OpenGL-ről még annyit, hogy az OpenGL 3 az eredetileg nem az az API lett volna, amit ma annak ismerünk, hanem volt abból egy elég széles körben beharangozott draft, ami még a mostani "újjal" sem igen lett volna kompatibilis. Na az lett volna az az állkapocsleejtős innováció azon a fronton, ami elmaradt.

A többszálú renderelés meg egy mese. Eleve akkor lenne értelme, ha rendertargetenként lenne maximum egy szál, ami azért eléggé korlátos párhuzamosíthatóság, utána pedig jön a command buffer, ahol a driverben összeszorul az egész, és kénytelen is, hogy összeszoruljon, ugyanis
1) PCI-Express sín
2) a GPU EGY dolgot tud (hatékonyan) több példányban csinálni, pont ez a Cayman nagy újítása, hogy abban ez már a múlté, de azért még nincs mindenkinek 6900-asa otthon :P

Szóval jah, nagyon jó lenne a közvetlen command buffer kezelés, de pl. az OpenGL eleve streamként képzeli el a rendszert, és ott csücsül az API-ban a kezdetek óta az aszinkron glFlush() - magyarán szar batching mellett is össze lehet várni egy rakás draw call-t. Ha meg a parancssorozat kezelgetése a nehézkes, az már tisztán CPU overhead. Az sem mindegy, de driver-driver-driver... :P

(#74) ddekany válasza hohoo (#70) üzenetére


ddekany
veterán

"Szóval a mostani JIT szerű grafikus apizgatás helyett. gpu gépi kódra compileolt grafikára gondolsz?"

Nem, én itt eleve csak arról a kódrésztől beszélek, ami a CPU-n fut. Ha jól értem annak a vízfejéről beszélt az AMD-s fazon.

(#75) con_di_B válasza ddekany (#66) üzenetére


con_di_B
tag

Nem rossz ötlet amit mondasz, de ami igazán fontos az eleve így működik.

Az igazán fontos alatt értsd azt például, hogy van egy rakat kirajzolandó objektumunk, és mindegyikhez egy program (shaderekből), hogy azt hogyna is kell kirajzolni. Ezeknek a futtatása teljesen a GPU-n történik, GPU specifikus assembly kóddal, béke van.

A probléma az, hogy sokféle program van (meg paraméter, meg textúra, meg stb.), szóval az oké, hogy onnantól kezdve h beállítgatjuk a dolgokat, és rácsapunk a GPU hátsójára, h gyihááá, onnantól kezdve piszokgyors és nem igényle CPU-t, de mivel, mint mondtam, sokféle beállítás van, ezért a gyakorlatban legrosszabb esetben az van, hogy minden egyes apró objektumnál a GPU ugyan tudná még darálni, de elfogyott amunka, és várakozik, hogy a CPU felparaméterezze a következő munkamenetét. Na egy ilyen "gyiháá"-t hívnak draw call-nak.

Ez ellen az egyik védekezési mód, egy álomvilágban, az lenne amit a cikk ír, hogy legyen rövidebb a gyeplő, és akkor nem kell annyit várni, amikor irányt akarunk váltani a szekérrel. A másik megoldás meg az, hogy előbb gondoljuk át, hogy mit is akarunk, képezzünk rendezett csoportokat, aztán oldjuk meg minél kevesebb draw callal ugyanazt a kirajzolási sorozatot. Sokszor nem mernek durvább rendezéseket bevetni renderelés előtt, mert annak is van saját költsége, ami viszont általában megtérül.

(#76) con_di_B válasza ddekany (#74) üzenetére


con_di_B
tag

Bocs az előbbi naiv megfogalmazásért, de másoknak hasznos lehetett ezt tisztába tenni. Amit te akarsz, ahhoz hasonló meg volt már régen, a display list-ek (OpenGL). Lehetett olyat csinálni, hogy egy ponton azt mondod, h na most jegyezd meg mit csinálok, aztán egy API hívás sorozat, na köszi, eddig tartott, aztán azt a sorozatot elmentette, átstruktúrálhatta a saját kedve szerint ("lefordíthatta"), aztán azt akárhányszor újra meghívhattad.

Csak annyi a baja a megoldásnak, hogy a paramétereket is mentette, szóval így nagyon kötött. De egyébként igen, egy ehhez hasonló dolog, egyénileg testreszabható paraméterezéssel nem lenne rossz. csak valószínűleg bőven elég bonyolult lenne már maga az implementáció, nemmég úgy megírni, hogy profitáljon is belőle a driver.

[ Szerkesztve ]

(#77) JoolsNOS válasza misx (#1) üzenetére


JoolsNOS
veterán

Gyakorlatilag erre vannak a konzolok :) Azaz ilyen gondolatsíkon vagy, hogy is mondjam.

I5 9400F, Asrock B365M Pro4, Asus RTX4070 Super Dual EVO 12GB, 16Gb DDR4, Seasonic Focus 650 Platinum TV: 65A7GQ

(#78) VIC20


VIC20
őstag

"...kevés olyan hely van a földön.."

Jelen esetben a nagy kezdőbetűs Földről van szó.

(#79) ddekany válasza con_di_B (#76) üzenetére


ddekany
veterán

Ha jól sejtem a konzolon is pont ez a helyzet: etetni kell a GPU-t, ütemezni kell a parancs löketeket, stb. Tehát itt nincs különbség. Mégis ott jóval kevesebb az overhead, ha jól értettem amit az AMD-s mond. Én annak a résznek a megtakarítására firtattam, ami PC és a konzol közti ezt különbséget adja. Ha ez főleg a hardverre specializálódásból adódó nagyobb léptékű (átfogóbb) optimalizációból adódik, akkor esélytelenül hangzik, de ha afféle "bagatell" dolgokról van szó, hogy teszem azt (csak példa, nem tudom jó-e) DirectX-nél állandóan kreálsz egy tonna adatstruktúrát ami úgyis csak át lesz konvertálva GPU-specifikusra aztán el lesz dobva, akkor ott talán reális javítani a helyzeten. De, nem tudom, csak egy felvetés részemről, hogy tán más API megközelítéssel elviselhető redukálható lenne ez... nekem olyasmi jutott eszembe, amit API helyett már inkább DSL-nek hívna az ember.

"elég bonyolult lenne már maga az implementáció, nemmég úgy megírni, hogy profitáljon is belőle a driver"

Én az implementációt a driver részeként képzeltem el, pont mert a drivet tudja hogy egész pontosan hogy működik a GPU. De persze az egész csak afféle gondolat felvetés...

[ Szerkesztve ]

(#80) motorhead


motorhead
aktív tag

Sajnos a mai PC-ken nem csak a GPU/Driver hanem más is optimalizálatlan. Lassan olyan erős gépek kellenek egy sima oprendszer normális futtatásához, hogy a vicc kategóriát súrolja. Optimalizálatlanok a szoftverek nagyon nagy hányada hiszen nem a jól megírt szoftver a cél, hanem a gyorsan eladható. Tehát ha arról beszélünk mennyivel többet ki lehetne hozni a mai GPU-kból grafikailag, akkor legelőször arról kellene beszélni eleve mennyit kellene tudni kihozni egy átlag 3-4GhZ-en ketyegő PC-ből. Látványosan másabbak a mai pl. 3D-s játékok, de nem annyival mint amennyivel a GPU-k erősebbek és komplexebbek szerintem. És igen, én is határozottan alátámasztom, a DX10-ből sem lett még kihozva amire képes,lásd cryengine.
Sokszorosa a PC-k teljesítménye a 10-15 évnél régebben gyártottaknak de ennyivel nem lett hajmeresztően jobb az oprendszer sem. Sőt.. de ezt most nem feszegetem. Én még láttam 14MhZ-en kiváló oprendszert. Ma éppen látok egy elég jót 3ghZ-en. De nincs egyenes arányosságban a fejlettség a hardverek fejlettségével. Sajnos a PC-s technológia alapjaiban gáz, ezért csak a hardverek sebességének és komplexitásának fejlődésével lehet újat felmutatni. De aki már látott mást annak nem a cikk elolvasása után villan be, hogy igencsak meg vannak vezetve az emberek ebben a hardveres kérdésben. Az a cél, minél több hardvert el lehessen adni, ami kicsit többet mutat mint az előző és megy majd rajta a legújabb game hibátlanul. Azért ma is látunk ilyen olyan render motort ami gyorsabb lassab a másiknál. Ebből is a nagy igazság derül ki, ha kicsit többet ülnének a programozók a munka előtt akkor sokkal többet is ki lehetne hozni egy mai GPU-ból. Ezen dolgok miatt engem ez a cikk nem lep meg, és abszolut egyet értek vele. Bár a programozáshoz nem értek, a számokat azért egymáshoz tudom viszonyítani. Pár éven belül lesznek ezek szerint több GhZ-es GPU-k és kicsivel jobb grafika...

..--OLDSCHOOL FOREVER--..

(#81) LackoMester


LackoMester
addikt

Érdekes, jó kis irás, okosabb lettem. :R

ott a kisértet a ganéná.... by: Bendegúz

(#82) GOro.hu válasza motorhead (#80) üzenetére


GOro.hu
csendes tag

Örök érvényű, hogy a programozó ideje a legdrágább... Másfelől az idő gyakran megszépíti a dolgokat, jó pár évvel ezelőtti játékok pre-render cutscene-jében sem lehetett látni olyasmit mint a Samaritan techdemoban az idei GDC-n, igaz nem átlagos otthoni konfiguráción futott. A különböző számítást végző egységek, csak órajel-sebesség alapján történő összehasonlítgatása céltalan, és a mértékegység (Hertz) helyesen: Hz

sx,dx,x:read

(#83) ddekany válasza motorhead (#80) üzenetére


ddekany
veterán

"Látványosan másabbak a mai pl. 3D-s játékok, de nem annyival mint amennyivel a GPU-k erősebbek és komplexebbek szerintem."

Egyszerűsített példával, amíg egy szörny feje kb egy kocka volt, addig látványos volt az is, ha később már 2x annyi háromszögből ált. Amikor már (hasra) 50 háromszög a feje, az már "elég jó", és a 100 háromszög nem szembe ötlően jobb, mégis 2x akkors számítási teljesítmény kellett hozzá, amit ráadásul műszakilag is sokkal nagyobb kihívás megvalósítani, mint régen amikor még nem feszegették annyira a határokat. Ugyan ez a mechanizmus kb mindenre igaz, nem csak videó kártyára: a hőskorszakban mindennel sokkal könnyebb látványosan haladni.

"Sajnos a PC-s technológia alapjaiban gáz"

Annyira azért nem... általában semmi semmi ideális (SCSI vs ATA, CISC VS RISC, stb), de gyakorlatban azért hozza 90% ami tényleg kelleni is szokott. Ha magát a változatosságot tartod gáznak, szvsz az a piaci versenyhez és innovációhoz fontos. Amit most konzolban vagy egyéb "fix" hardverben látsz (mondjuk egy Mac), valószínűleg nem lehetne olyan, ha nem lett volna a PC.

"Optimalizálatlanok a szoftverek nagyon nagy hányada hiszen nem a jól megírt szoftver a cél, hanem a gyorsan eladható."
"Ebből is a nagy igazság derül ki, ha kicsit többet ülnének a programozók a munka előtt"

GPU területén mondjuk nem tudom annyira mi van, de úgy általában a szoftver optimalizáció kapcsán ez egy gyakori tévképzet. Nem kicsit kell többet ülni előtte, és azt a plusz munkaidőt neked, a végfelhasználónak kellene megfizetni. Hidd el, sokan szívesen csiszolgatnak 2x annyi ideig egy programot, ha megfizetnék (végső soron a vásárló, azaz te), mindenki utálja a rohanást. De nem fizetik meg, nincs rá igény. Az emberi munka drága, a hardvert meg okádják a gyárak, tehát fajlagosan olcsó. A másik, hogy az optimalizáció csak részben utólagos csiszolgatás kérdése, másik részben szakértelemé, ami már a kezdetektől a nagyobb léptékű tervezést befolyásolja. A jó programozó (szemben a tucat-programozóval) pedig ismét csak drága. Azt is neked kellene kifizetni.

A másik, hogy a jobb hardver nem titkolt célja, hogy fejlettebb de kevésbé gépközeli szoftver fejlesztési módszereket (pl. fejlettebb nyelvek) tegyenek lehetővé. Ez átlagos alkalmazásoknál neked is megéri, mert egységnyi áron többet tudó és kevésbé hibás szoftvert kapsz. És ahogy az alkalmazások komplexitása nő ez csak egyre inkább így lesz. A programozók agya, mivel csak emberek, nem fejlődik (illetve de, csak az evolúció lassú), a szoftverek viszont egyre bonyolultabbak. A hardver (még) fejlődik, arra lehet nyújtózkodni...

[ Szerkesztve ]

(#84) angyalpc2


angyalpc2
aktív tag

programozzanak *.asm-ben :C

laza 100xoros gyorsulás lenne

:D

(#85) ddekany válasza angyalpc2 (#84) üzenetére


ddekany
veterán

Csak a laikusok kedvérért mondom: Nem hozna jelentős gyorsulást ha assembly-ben programoznának más kiforrottabb nem-script nyelvhez képest. (Néha kell asm... pl. ha a fordító nem használna bizonyos SIMD utasításokat magától, de elenyésző számú esetről van szó.)

(#86) h.kalman


h.kalman
csendes tag

Kicsit eltérve a témától: a Dx api kicsit vakítás mivel egy nagyon fontos dolgot kihagytok a dologból!!!!! DX = MS windóz és ez valakinek nagyon sokat megér .
Az open gl el a nagy probléma részben a platformfüggetlenség lenne és ez nem érné meg mindenkinek. ( és utolag dx api-n programozni könnyebb az open gl hez képest és a játékok hamarabb elömleszthetik a polcokat amik + 3 hónap munkával csiszolnának akkor már ki lehetne adni és nem lenne a sok kezdeti bug ) De ez az én véleményem ......

[ Szerkesztve ]

(#87) Termigáßor válasza angyalpc2 (#84) üzenetére


Termigáßor
aktív tag

100x hosszabb fejlesztési idő mellett... :U

Jobbára ártalmatlan...

(#88) joysefke válasza ddekany (#85) üzenetére


joysefke
veterán
LOGOUT blog

+1
Ja, vagy lassulást hozna :
C++-ban sokkal egyszerűbben leprogramozható egy komplexebb, de gyorsabb fügvény mint asm-ben. Egy quick sort Javaban is agyonver egy ASM-es buborékrendezést mondjuk 100 elem mellett. És ha a programnak azok a részei algoritmikousan jól vannak kódolva, amelyek sokat futnak, akkor a többi már "szinte" mindegy...

J.

(#89) D1Rect válasza motorhead (#80) üzenetére


D1Rect
félisten

"Lassan olyan erős gépek kellenek egy sima oprendszer normális futtatásához, hogy a vicc kategóriát súrolja."
Egy E350+4Gb ram gyönyörűen futtatja a W7-et. ;)

(#90) mzso


mzso
veterán

Miért nem csinálnak egy nagyjából stabil ISA-t a GPU/stream processorokhoz is mint az x86 a CPU-khoz? (vagy valami újat ami mindkét félét magába foglalja) Akkor nem lenne ez a szenvedés. Csak le kéne fordítani a kódot és kész. És nem lennének OS-hez sem kötve a játékok.

[ Szerkesztve ]

(#91) ddekany válasza mzso (#90) üzenetére


ddekany
veterán

Eltekintve az üzleti kavarásoktól... gondolom nincs egyetértés benne, hogy annak milyennek is kéne lennie. Főleg ha jövőállónak is kéne ennek lennie. Fiatal az egész számítástechnika, hát még a GPU-s téma. (A nem OS-hez kötött játék meg ezen bőven túlmutat, hisz ált. azok az alkalmazások sem OS függetlenek, ahol nem kell vektor grafika.) Meg persze más célokra más teljesítményű GPU praktikus esetleg... ebből és adódik valamennyi változatosság (mondjuk konzolhoz képest, ahol ez is fix).

(#92) eziskamu


eziskamu
addikt

Nem hiszem hogy az API-t akarná eltüntetni a fickó, hanem inkább saját gyártófüggő API-t szeretne, mert azért a programozó is lusta valahol :DDD

mzso: Az is egy lehetőség, de az intel a Larabe-val nem pont azt szeretné? Sőt ott a GPU is kvázi x86-os lenne.

[ Szerkesztve ]

(#93) motorhead válasza D1Rect (#89) üzenetére


motorhead
aktív tag

Hát ez az. 4GB RAM kell egy oprendszer normális futtatásához és egy 2.7GhZ-es proci? Pont erről beszélek. Értem én,hogy az említett cucc nem vészesen drága, de a számok attól még hatalmasak. Egyébként ennél gyengébb gépen is szépen muzsikál kivételesen a Win7. Ez esetben talán kissé erősen fejeztem ki magam, itt mármint a Win7-nél érezhetően jobb az optimalizálás, mint a korábbi termékeknél. De azért hasra nem esek..

..--OLDSCHOOL FOREVER--..

(#94) ddekany válasza D1Rect (#89) üzenetére


ddekany
veterán

Azért abban az a 4G, de a 2G is (elég az...) eleve mellbevágó... sőt régi gépekhez képest a CPU is brutális. Én emlékszem még a Win95-ös gépekre, amik irodai munkára jól mentek 32MB RAM-al és valami 300Mhz-es mai szemmel nézve nevetségesen alacsony utasítás-per-órajeles egymagos CPU-val, néhány száz MB-s HDD-vel és valami S3 Trident-el. Ezek az átlag irodai felhasználó szempontjából nem sokban különbözik egy mai Win-től (persze amíg le nem rohadtak), de legalábbis nem annyira mint a régi és az új vas erejének a hányadosa alapján (ami 50 vagy ilyesmi, és akkor ez csak egy E-350 volt) várna a naiv ember. Sőt, van valahol még egy Pentium 133-as gépem Win95-el és Word 6-al, és ezekkel a szoftverekkel nem is lassú érzetre. (A Win7-éhez hasonló start menüt meg tálcát már akkor is lehetett volna simán csinálni, csak a kicsinyített előnézet nélkül és csak startmenün belüli kereséssel. Hasonló grafikai dizájnt is a szürke-kockák helyett, csak az amúgy teljesen haszontalan áttetszőség effekt meg áttűnési animációk nélkül. Mert hogy az átlag felhasználónak ezek a szembeötlőek, nem a belső felépítés.)

Azaz, igenis meglepőn drága volt az előrelépés a szoftver tudásában.

[ Szerkesztve ]

(#95) motorhead válasza ddekany (#83) üzenetére


motorhead
aktív tag

"Ugyan ez a mechanizmus kb mindenre igaz, nem csak videó kártyára: a hőskorszakban mindennel sokkal könnyebb látványosan haladni."

Igen, ebben teljes mértékben egyet értek. Hogy a példámnál maradjak, a Crysis-től nem látom szebbnek a 2. részt.Pedig eltelt majd 4 év. Négy éves hardver ma meg már a süllyesztőben. Csak az elmélet(ed) szerint ez később még gázabb lesz és még kevésbé fogunk jelentős változást látni az idő múltával.

"Amit most konzolban vagy egyéb "fix" hardverben látsz (mondjuk egy Mac), valószínűleg nem lehetne olyan, ha nem lett volna a PC."

Miért is?? :F A MAC és egyéb alter. gépek vagy célhardverek (mint a konzol) mindég más vonal volt mint a PC. Szerintem ezek nem a PC-k létezésének köszönhetik a létezésüket.

"Nem kicsit kell többet ülni előtte, és azt a plusz munkaidőt neked, a végfelhasználónak kellene megfizetni. "

Így is a végfelhasználó fizeti meg, csak nem drágában veszi meg a szoftvert, hanem hardvert cserél, hogy normálisan működjön. Így lehet eladni az új hardvereket. A pénz így is úgy is el van költve.Ez mivel jobb? Hát annál, hogy a hardver gyártók is kapnak a tortaszeletből amit pénzek hívnak.

"A programozók agya, mivel csak emberek, nem fejlődik (illetve de, csak az evolúció lassú), a szoftverek viszont egyre bonyolultabbak. A hardver (még) fejlődik, arra lehet nyújtózkodni..."

Mivel én nem értek a programozáshoz, csak az alapján tudok ítélni amit eddig láttam a fejlődéstörténelemben. Ezért gondolom azt, hogy valami nem kerek.

..--OLDSCHOOL FOREVER--..

(#96) motorhead válasza ddekany (#94) üzenetére


motorhead
aktív tag

Ebben úgy tűnik osztod a véleményem te is...

..--OLDSCHOOL FOREVER--..

(#97) Mozsa válasza D1Rect (#89) üzenetére


Mozsa
tag

Lehet hogy normális gépre gondolnak, nem holmi tákolmányra... :P

A gyönyörűen is elég szubjektív, nálad ha el sem indul rajta a win7 telepítő akkor is a gyönyörűen kategóriában köt ki....

[ Szerkesztve ]

(#98) ddekany válasza motorhead (#95) üzenetére


ddekany
veterán

"Miért is?? :F A MAC és egyéb alter. gépek vagy célhardverek (mint a konzol) mindég más vonal volt mint a PC."

Valahonnan jönnek azok a technikai vívmányok amiket ott felhasználnak... meg ma már a MAC is átállt hardveresen PC-re. Ha következő generációs konzolok GPU-ja is bizonyosan sokat fog meríteni abból, ami az alapvetően PC-re eladott GPU-k fejlődésében lezajlott azóta.

"Így is a végfelhasználó fizeti meg, csak nem drágában veszi meg a szoftvert, hanem hardvert cserél"

Csak épp lehet, hogy még mindig az az olcsóbb neked. Meg, a gyártók megoldják hogy újat vegyél akkor is, ha teljesítmény miatt nem is kéne... Áltag irodai gépeket vagy netezős gépet jelentős százalékban azért cserélsz le, mert bekrepálnak 5 év után (ill. cégeknél nem várják meg, mikor krepálnak be - nincs már rá támogatás, akkor csere).

Azt is vedd észre, hogy azért ez a szoftver lassulás általában "vízfej", és nem mindenre vonatkozik egyformán. Azaz, az átlag alkalmazás egyáltalán nem fut 100x gyorsabban a 100x erősebb gépeden, de nincs is arra égetően szükséget, mert kb elég gyors. De egy igazán gépigényes algoritmus, mint pl. egy adott minőségű renderelés 3D studióban vagy egy adott rátájú zip-be tömörítés közel 100x-os sebességgel fut a mostani 100x erősebb gépen.

"Ezért gondolom azt, hogy valami nem kerek."

Semmi sem kerek soha se... természetesen megy a bénázás ezerrel szoftverfejlesztés területén is. Más felől én látom valamennyire hogyan nő a "vízfej" (szerver oldalon amúgy), és ez megkerülhetlennek tűnő jelenség akkor is ha mindenki állati okos. Leegyszerűsítve az történik, hogy próbálunk egyre többet újra használható komponenseket használni, mert enélkül egyszerűen megdöglünk. Tehát ha verebet kell lőni egy alkalmazásban, akkor régen faragtam erre egy veréblövő csúzlit, ma viszont fogok egy mások által készített kismilló helyen világszerte használt univerzális interkontinentális giroszkópos plazmaágyút azt' kész. Az szegény batár nagy, mert rengetegféle felhasználásban helyt kell állnia (absztrakció, általánosítás). De amit építettek, az is csak egy komponens lesz, aminek mindenki csak felszínét látja már, és feledébe is merül, hogy ez belül univerzális plazmaágyút használ csúzli helyett, és még sok efféle szörnyet. Na, így lesz az alkalmazás amit 64K-ban meg lehetne írni 50 MB, és így kap sérvet alatta egy régi CPU.

[ Szerkesztve ]

(#99) Yutani válasza motorhead (#95) üzenetére


Yutani
nagyúr

"Amit most konzolban vagy egyéb "fix" hardverben látsz (mondjuk egy Mac), valószínűleg nem lehetne olyan, ha nem lett volna a PC."

Miért is?? A MAC és egyéb alter. gépek vagy célhardverek (mint a konzol) mindég más vonal volt mint a PC. Szerintem ezek nem a PC-k létezésének köszönhetik a létezésüket.

Az XBOX360 CPU-ja egy IBM PowerPC alapú processzor, a Cell-hez hasonló, mondjuk ez nem PC. Viszont az ATI Xenos GPU az abszolút rendelkezik PC-kapcsolattal, mert az ATI R500 GPU-k rokona, azaz az x1800-x1900 sorozat testvére. (Ebből következően az XBOX360 játékátiratainak jól kéne futni ezeken a VGA-kon, de mint tudjuk, nem így van.)

A PS3 Cell processzorokra épül, ami nem PC, viszont a GPU-t az Nvidia fejlesztette, és ha minden igaz, a G70 GPU rokona. Ez megint csak PC-kapcsolatot jelent.

Tehát adott két DirectX 9 szintű grafikus képességű konzol, amik a fix hardvernek köszönhetően olyan megjelenítést képesek létrehozni, amihez PC platformon sokkal erősebb hardver kell.

Szerk: Ahogy ddekany mondja, a MAC is PC alapú ma már, pontosabban Intel x86 alapú.

[ Szerkesztve ]

#tarcsad

(#100) hcl


hcl
félisten
LOGOUT blog

"Richard Huddy egy rendkívül érdekes kijelentést tett az elmúlt héten a bit-tech számára adott interjúban."

Semmi újdonság nincs ebben. Már az őskorban is tudtuk, hogy ha a program a vason fut, akkor gyorsabb lesz, mintha interpreter, különböző kompatibilitási rétegek, stb.

Valamit valamiért.
Az API és driver funkciókat kellene egybeolvasztani akkor eltűnne meg meglehetősen vastag réteg, azaz a DX nagy része, így sokkal gyorsabbak lehetnének a játékok.

Mutogatni való hater díszpinty

Copyright © 2000-2024 PROHARDVER Informatikai Kft.