- Amazon Fire TV stick/box
- Azonnali informatikai kérdések órája
- Így építsd a billentyűzeted!
- A régi node-okra koncentrál a szankciók miatt Kína
- 5.1, 7.1 és gamer fejhallgatók
- Hogy is néznek ki a gépeink?
- Processzorra való vizesblokk az ASUS ROG-os portfóliójában
- TCL LCD és LED TV-k
- Május 7-én lesz az új iPadek bemutatója
- VR topik (Oculus Rift, stb.)
Hirdetés
-
PowerWash Simulator - Már több mint 12 millióan próbálták ki
gp Sokak szerint abszurd a játék alap témája, mégis nagyon sokan döntöttek arról hogy kipróbálják a programot.
-
Érkezik Magyarországa az LG szuper dizájnos hordozható projektora
ph A szokatlan külsejű CineBeam Q képes a 4K felbontás megjelenítésére.
-
Május 7-én lesz az új iPadek bemutatója
ma Online termékbemutatót tart az Apple május 7-én, a közvetítésen iPadek és hozzájuk tartozó kiegészítők lesznek a téma.
Új hozzászólás Aktív témák
-
Phvhun
őstag
Az egész cikket kb értelmetlenné tette hogy nem írtad le hogy mi is konkrétan az adatorientált programozási modell, esetleg egy példával kiegészítve.
-
sayinpety
tag
Regebb ota letezik a problema. A latency novekedese az oka. Az L1 1-3 ciklus, a main memory sokkal tobb. Az objektumorientalt programozas egyszerre jo es rossz. Egy osztalyra van kodod, amit futtatsz tobbszor. Ha a kod i/d cache misst eredmenyez, akkor mindegyik futtatas draga. Minden miss utan a main memory latencyvel lassul a kod. A DOD megszunteti az i/d cache misst az elso futtatas utan. A DOD kod csak egy for ciklus.
A multithread is nehez, ha nem lehet tudni elore hogyan lesz elerve az adat. Offload is lehetetlen jobb adateleres nelkul. Egy game kiveteles program. Tudni lehet minden adatrol amihez hozzaferunk. Esszeru elobb az adatokat optimalizalni, aztan a kodot.
-
Meteorhead
aktív tag
Csak én nem értem, hogy ez a gyakorlatban mit jelent? Lehet, hogy eddig nem követték végig az adatok betöltését és a kiírásokat, de azért lehetett tudni, hogy mikor mit csinál egy motor. Adatpárhuzamosságra tervezni egy motort ennyire újnak számít?
-
atus72
senior tag
En nem fikazok de nekem sem jott le hogu pontosan mi is ez az uj paradigma
A legjobb valami pelda lenne, de nem varom el Abutol hogy csinaljon egyet hanem valami link kellene hogy megnezzuk mi is ez. -
sayinpety
tag
válasz Meteorhead #7 üzenetére
Igen. A meglevo code base sok penzt emesztett fel. A valtast a cross-platform studiok a console generaciokhoz tervezik. Az elerheto game enginek jelentos resze nem veszi figyelembe az adatoptimalizalast/adatparhuzamositast, nem hasznalnak optimalis adatbetoltest. Allando a cache miss.
A DOD ma meg a console exclusive gamek privilegiuma.
[ Szerkesztve ]
-
marcell991
tag
Itt egy pdf a DICE oldaláról, egész jól elmagyarázza a problémát [link]
Developers, developers, developers, developers! http://youtu.be/KMU0tzLwhbE
-
Phvhun
őstag
válasz marcell991 #10 üzenetére
Érdekes.
-
Psych0
őstag
A gráfon lemaradt a processzor és memória performansz mértékegysége. Persze az is elég lett volna, hogy relatív performansz, de akkor is érdekes lenne, hogy milyen mértékegység esett ki. Gondolom hozzáférési idő, ami a processzorok esetében a regiszterekre értendő...
"As an online discussion grows longer, the probability of a comparison involving Nazis or Hitler approaches 1."
-
Goose-T
veterán
Beszabadult valaki az irodába, aki ért az SQL-hez is? Én régóta így írom a kódjaimat, most már tudom, hogy DOD filozófiával fejlesztek, tök jó. Ezen is látszik, hogy mennyire nincs átjárás a nagyvállalati szoftverfejlesztés és a játékstúdiók között.
Rockbandám: https://fb.me/scharlotterhodes *** Gitárelektronikai műhelyem: https://www.fb.me/goosetgitar
-
Meteorhead
aktív tag
válasz marcell991 #10 üzenetére
Magyarán rájöttek, hogy játék motorokban is van AoS vs SoA? Gratulálok.
-
sirpalee
csendes tag
válasz Meteorhead #15 üzenetére
Ez a folyamat már nagyon régóta tart. Az más téma, hogy a cikkíró csak most olvasott róla elsőnek.
raytraceisten és csodamedic
-
Raymond
félisten
Ott a pont. Egesz pontosan a konzolos jatekfejlesztesnel epp par eve a PS3 es CELL miatt volt nagy tema. Ugyanugy ahogy a SoA vs AoS is. Csak lehet hogy akkor a cikkiro meg nem kovette annyira tuzetesen a Beyond3D forumot igy nincs hatter info, csak most itt-ott van egy ilyen buzzword-el teli cikk ami siman sebbi egy darab ottani hozzaszolasa alapjan is keszulhet. Ahogy keszult is most mar nem egyszer
Privat velemeny - keretik nem megkovezni...
-
sayinpety
tag
Cellnel korabbi a problema. A Cellel csak nagyobb figyelmet kapott. A console kulon kategoria. Cross-platform fejlesztes soran a 3-4 eves keses lehetseges. Ma csak azert kap ujra figyelmet, mert mindenki elkezdi alkalmazni. A next-gen consolehoz/korszakhoz uj enginek keszulnek. A regi code base mar kitermelte a befektetest.
A Mantle sem vilagrengeto ujdonsag. A GCM volt az elso modern low-level/high-performance API, am a koncept csak most kerul at PCbe. Fel evtized kesessel. -
lenox
veterán
A koncepció már egy évtizede létezik
A koncepcio kb. onnantol letezik, hogy kitalaltak a cache-t. Nem veletlenul talaltak ki, persze mindig ra lehet csodalkozni, hogy je, ha nem szopatom a cachet, hanem ertem, hogy hogyan mukodik, akkor mennyivel gyorsabb tud lenni valami, de monduk ezt tul nagy felfedezesnek nem neveznem.
-
Reverend
tag
Bizony! Csak valószínű akik most felfedezték újra a DOD-t, azok még nem éltek 1995-ben, amikor sz@ptunk a cache associativity-vel [link].
Csak hogy a fiatalok is értsék: ha egy cache 2 way assoc. és nem mellesleg (pl.) 4096 byte széles (pl. 8k L1 cache), azt jelenti, hogy a memóriában minden egész 4096 byte-os címről származó adatból 2-őt tud tárolni. Azaz ha beolvasol egy adatot az egyszerűség kedvéért 4096-ról, majd 8192-ről, ez még a cache-ben lesz. De ha beolvasol egyet 12288-ról, kiüti a korábbi adatot. Ha ezek után írsz egy kódot, mely két nagy tömböt összead egy harmadikba, és történetesen a tömbök alignolva vannak 4096-ra (mert pl. a méretük ennek egész számú többszöröse, és egymás mögött vannak), akkor látható, hogy szépen folyamatosan cache missed lesz. De ha az eredmény tömböt eltolod a cache blokkméretével (cache line, valahol 16 - 128 byte között processzortól függően), akkor sosem lesz cache missed, egész pontosan csak blokkhatárkor. A kód többszörösére gyorsul. Tipikus DOD probléma, illetve annak egy tovább bonyolított verziója.
Ezzel a problémával egy 486-os gépen küzdöttem 1995 körül. Ha jól emlékszem.
-
Jim Tonic
nagyúr
Klassz. Akkor most visszatérünk majd oda, amit régóta állítanak néhányan, hogy az OO ugyan kényelmes, de óriási overhead lesz a végeredménye?
Alcohol & calculus don't mix. Never drink & derive.
-
sirpalee
csendes tag
válasz oraihunter #23 üzenetére
Volt smiley? Nem. Akkor gondolom egyértelmű a válasz.
raytraceisten és csodamedic
Új hozzászólás Aktív témák
- Milyen routert?
- Samsung Galaxy S21 Ultra - vákuumcsomagolás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Készül a Galaxy S24 FE
- Google Pixel 6/7/8 topik
- Amazon Fire TV stick/box
- Azonnali informatikai kérdések órája
- 20 ezer új munkást visz Eindhovenbe az ASML
- Videó stream letöltése
- Ukrajnai háború
- További aktív témák...
- XBOX ONE/PS4/PS5/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- XBOX SERIES/PS4/PS5/XBOX ONE/NINTENDO SWITCH konzolt vásárolnék!
- PS5/PS4/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!
- Új Dobozos Lenovo Ideapad Flex 5 x360 Érintős Ultrabook Óriás Tab 16" -40% Ryzen 5 5500U 16/512 QHD
- PS4/PS5/XBOX ONE/XBOX SERIES/NINTENDO SWITCH konzolt vásárolnék!