27
-
Vers #27 akkor beszéljünk az irregular shadow maprol :)
-
A1274815 #26 HLSL/GLSL/Cg alatt igen, de az assemblyje is viszonylag kényelmes. -
#25 Mintha most nem lenne olyan egyszerű egy shader kódot írni, mint c#-ban programozni... főleg dx11-ben. -
A1274815 #24 És akkor még a TEX utasításokat nem is veséztük ki (1D, 2D, 3D, CUBE, Rectangle, 1DArray, 2DArray, CUBEArray, 4D), amiket ugye HW-sen tuda GPU, ráadásul, Bilinear, MIPmapping, Trilinear, Anisotróp, PCF szűrőkkel együtt, sőt DX10.1-től van támogatásrá, hogy gyorsabban lehesen akár milyen szűrőt implementálni pixel shaderben. -
A1274815 #23 "Egy shader utasitas leforditva altalaban 1 vektor muvelet lesz, ..."
Khm.
DP3 utasítás
__asm
{
mulps xmm0, xmm1;
haddps xmm0, xmm0;
haddps xmm0, xmm0;
}
DP4 utasítás
__asm
{
mulps xmm0, xmm1;
haddps xmm0, xmm0;
haddps xmm0, xmm0;
haddps xmm0, xmm0;
}
CRS/XPD utasítás:
__asm
{
movaps xmm2,xmm0;
movaps xmm3,xmm1;
shufps xmm0, xmm0, 0x8d;
shufps xmm1, xmm1, 0x1e;
mulps xmm0, xmm1;
shufps xmm2, xmm2, 0x1e;
shufps xmm3, xmm3, 0x8d;
mulps xmm2, xmm3;
subps xmm0, xmm2;
}
MAD utasítás
madaps xmm0, xmm1, xmm2; //x64 only
Ráadásul a GPU utasítások 3 címes gépekkel modellezhetőek, míg az x64/x86 2 címes gépekkel. -
kvp #22 "Na már most egy modern GPU tényleg GFLOPS felett van már, így nem értem hogy lesz Larrabee high end verziód, 1024 GPU teljesítményű?"
1024 gpu mag teljesitmenyu. Azaz a high end valtozat kb. egy mai dx10-es nvidia cpu teljesitmenyenek a negyszereset hozza majd. Az alap larrabee pedig eppen hogy eleri a mai 256 magos nvida gpu-k teljesitmenyet, ami nem szamit olyan rossz adatnak. Mindezt ugy, hogy 16 cpu es cpu magonkent 16 alu lesz benne, ami 256 gpu-s alu-nak felel meg, 16-os shader szal kotegekkel. (ehhez hasonlo az nvidia megoldasa is)
Egy shader utasitas leforditva altalaban 1 vektor muvelet lesz, ami egyszerre max. 16 shader szalat tud igy futtatni, a jelenlegi x86-ok 8 szalaval szemben, tovabba hardverbol tamogatnak majd nehany csak gpu-k eseten szukseges matematikai muveletet is, ami az altalanos celu x86-osokbol eddig kimaradt es csak emulalni lehetett. A branch egyseg az nvidia minajara a kozponti magokban kap helyett, tehat a 16 shader szal csak egyszerre tud branch-elni (mivel valojaban a 16 shader 1 valodi cpu-n fut vliw-es vektor utasitaskent). Az egyszerubb if/then/else megoldasokat loop unrolling-al es conditional store-okkal lehet linearizalni, ami bizonyos bonyolultsagig lehetove teszi a teljesitmenyvesztes nelkuli elagazasos shader programok irasat.
A lenyeg az, hogy mindezt hagyomanyos x86-os kornyezetben lehet megtenni, ami azt jelenti, hogy a larrabbe extra tudasa elerheto lesz minden felhasznaloi program szamara (mint ahogy az mmx/sse utasitasok is). Mindezt specialis fejlesztoi kellekek es barmifele trukkozes nelkul. (tehat nyugodtan lehet majd akar c++-ban vagy c#-ban shader alapu kodot irni, mivel a larrabee is csak egy sima x86 lesz, csak sok maggal es uj multimedias utasitasokkal, mint a pentium ota az osszes intel cpu) -
A1274815 #21 "Láttam én annó GF4MX-re is olyan demo-t ami tele volt shader szerű megoldásokkal, pedig a kártya amúgy ilyet nem tudott, elvileg."
Pedi igen, TNT 2 óta tudott olyat, csak nagyon primitív, textúra címzéssi lehetőségekkel nem rendelkezett, úgy hívták Register Combiner, bár dot3 bump-hoz nem kellett, meg volt ATI-kon is meg NV is még az EnvCombiner. -
#20 ez a másik... ha egy termék életciklusa 2+ év lenne, akkor nem ekkora lenne egy (mellesleg tök unalmas, de ezt már 1000000x ki van tárgyalva) mai játék gépigénye, hanem fele akkora. de hát üzlet az üzlet. -
#19 Hát nekem is van olyan érzésem, hogy adott nagyságú sziliciumból, adott technológián kb mindenki max ugyan azt tudja kihozni. Ha valamire rágyúr, akkor másban kell engedni. A jobb programozhatóság, az végül az elérhető max teljesítmény rovására megy.
Lásd X360 vs PS3 architektúra, ami először előny, az hátrányt okoz a jövőben és fordítva.
PC-nél persze semelyik termék nem jut el odáig, hogy komolyan kelljen a programok optimalizálásán gondolkodni, ergó, ha amúgy is rövid a ciklusidő, akkor a max teljesítménnyel szemben a könnyű programozhatóság jelent valós előnyt.
Láttam én annó GF4MX-re is olyan demo-t ami tele volt shader szerű megoldásokkal, pedig a kártya amúgy ilyet nem tudott, elvileg. A kutyát nem érdekelte, hogy mi a grafkártya valós teljesítménye, mert mire a játékok odáig jutnak, már 2 generációval odébb járunk.
Amúgy hasonló megoldásokkal valszeg más cég pl. IBM is foglalkozik (valami fejlettebb cell-lel), csak nem csinálnak akkora felhajtást körülötte. -
#18 de ugye ezt Róma dicsőségére teszik?
majd meglássuk, még nem tudhassuk mit fejlesztenek. -
#17 Mindegy is, a lényeg az, hogy nem akármekkora áll leejtés lesz, ha a kijön ps4/wii hd/x720, és ehhez hasonló technológiákat építenek beléjük ^^ -
krajcsovszkig #16 Az biztos hogy hót egyszerű lesz programozni a többi gpu-hoz képest, de hogy a teljesítménye közel sem lesz akkora, az is biztos... Szerintem kb. 4x olyan gyors lesz mint az ugyanannyi shaderű ATik, tehát olyan HD4550-4650 között... Vagy a f.sz tudja :D -
A1274815 #15 "Egy high end larrabee (64 mag) eseten mar 1024 gpu mag teljesitmenye allna a chip rendelkezesere, akar sima x86-os felhasznaloi programok futtatasara is."
Na nézzük csak ez hogy jön ki?
Azt mondod 1 larrabee (32 mag) = 11 cell ~1 NVidia GPU, majd 1 larrabee (64 mag) = 1024 GPU? (Max valami Intel GMA920-asból).
Ez az állításod így elsőre még a matematikát is kiforgatja.
Na de vegyük át, mégegyszer más úton:
Intel high end core i7, 4 mag = szumma 51GFLOPS.
De atom procimagokból lesz, amit egy modernebb technológiával gyártott Athlon XP azonos órajelen aláz, de vegyük rendesnek 51/4 = ~17. 32*17=544, 64*17=1088. Na már most egy modern GPU tényleg GFLOPS felett van már, így nem értem hogy lesz Larrabee high end verziód, 1024 GPU teljesítményű? Ráadásul a sok mag egymás útjában is lesz. GPU-nál ez úgy van kiküszöbölve, hogy trükköznek a textúra, z-buffer, stb cachekkel és az adatbuszok számával. -
#14 És mindezt hol álmodtad? :D -
kvp #13 "A szoftveres 3d emulációtól nem kéne sokat várni, legalábbis a ps3ban is van egy gyenge videochip, hogy majd a 8 magos cpu leemulálja a dolgokat,"
A ps3-ban csak 6 aktiv spe mag van es 1 ppe. A larrabee eseten 16 x86-os cpu mag (ppe) lesz, magonkent 16 vektoregyseggel (tehat egy larrabee kb. egy 16 ppe/64 spe-s cell-nek felelne meg azonos orajelen, vagy kb. 11 darab a ps3-ba rakott cell-nek, esetleg 1 darab jelenlegi dx10-es nvidia chipnek). A larrabee tovabbi elonye, hogy minden mag latja a teljes rendszermemoriat es a teljes cache-t, tehat mindenfele trukkozes nelkul erheto el a teljes fizikai ram, ha a cim eppen a cache-ben van akar 1 orajel alatt is. Ezt akarjak megfejelni meg smt tamogatassal, ami akkor ad munkat a magoknak ha eppen varnak valamire (memoriara), es ez az utobbi megoldas megint nem igenyel semmilyen programozoi trukkot.
Egy high end larrabee (64 mag) eseten mar 1024 gpu mag teljesitmenye allna a chip rendelkezesere, akar sima x86-os felhasznaloi programok futtatasara is. -
#12 A szoftveres 3d emulációtól nem kéne sokat várni, legalábbis a ps3ban is van egy gyenge videochip, hogy majd a 8 magos cpu leemulálja a dolgokat, aztán csak mostanában kezdünk eljutni oda hogy kicsit szebbek lesznek ps3mon a játékok mint xbox360on. Mindenesetre ha a következő konzolgenerációban 32magos procik lesznek, akkor nem semmi látvány lesz, habár nekem az xbox 360as cryengine3 techdemo is teljesen valósághűnek hatott. -
Abu85 #11 Kevesebbet fog tudni. Az NV chipnek, még mindig meg lesz az az előnye, hogy a fix funkciós feladatokat nem emulálja. A Larrabee a textúrázáson kívül mindent emulál. Még a DX11-es tesszellátort is, bár a hírek szerint azt a GT300 is emulálni fogja. Mindenesetre az látszik, hogy az Intel nem a PC-s VGA piacra koncentrál, ahogy már az NVIDIA sem. -
#10 Semennyivel se lesz jobb. Valószínűleg jóval rosszabb lesz. Ez egy bemutató, hogy majd egyszer ilyesmit kell csinálni. -
freemanone #9 hmm.... érdekes fejlesztés. Valami hasonlóval próbálkozik az ATI/AMD ha jól emlékszek hybrid-eknek nevezték őket. Elég régen olvastam és nem emlékszem, hogy hol. Szóval lehet tévedek, viszont arról nemigazán van hírmorzsa. -
#8 Ennek tényleg több magja lesz, mint nekem ahány fogam. -
kvp #7 A larrabee-ben az intel pentium mmx magok leszarmazottai lesznek, egy meg ujabb mmx/sse/stb vektoregyseggel. Ez gyakorlatilag az nvidia jelenlegi megoldasara hasonlit, ahol 1 gpu branch egyseghez 16 alu csoport tartozik (risc vliw). Az intel eseten egy maghoz egy darab 16 alu-t tartalmazo matematikai egyseg tartozik (cisc vliw). Igy gyakorlatilag a larrabee ugyanazt tudja mint egy 16*16=256 magos nvidia gpu, csak valamiel magasabb lesz az orajel es mag tartalmaz egy sima x86-os skalar egyseget is, igy kepes besegiteni vagy helyettesiteni a cpu-t. Egy-egy larrabee mag gyakorlatilag egy-egy atom chipet tartalmaz mint branch egyseget, tehat 16 atom teljesitmenyet hozza ha cpu-nak hasznaljak vagy egy darab 256 magos nvidia gpu-t tud helyettesiteni. Lehetoseg van arra is, hogy osztozzanak a munkan, tehat a gepben csak egy larrabee legyen, ami cpu-kent es gpu-kent is mukodik, az alapjan eppen mire van szuksege a rendszernek. Az architektura amire fejleszteni kell, gyakorlatilag egy 16 magos x86 ujfajta vektoregyseggel kiegeszitve. Ilyenre irta a microsoft a directx referencia driver-et (directx software render), amit csak ki kell egesziteni az uj vektoregyseg hasznalataval (tobb es nagyobb vektor regiszter + par uj utasitas). Ha az intel vegre kihozna, akkor eleg nagyot tudnanak vele tarolni. (ez a chip gyakorlatilag cpu/gpu/eszaki hid is egyben) -
Dr Adee #6 "én ezt kétlem, mikor még a 16 magig sem jutottunk, otthon a 8-at se lehet használni és már négy szálra is nehéz programozni."
Minden GPU alap felépítésében párhuzamosan hajtja végre a műveleteket. Ez is ugyanazt fogja csinálni mint a többi, remélem gyorsabban. Amúgy rengeteg lehetőség van benne, fantasztikus fejlesztés. Hihetetlen sok mindenre használható majd az x86-os kivitelezés miatt. Sokkal többre mint akármelyik GPU.
Más:
Elég fura lenne ha nem lehetne programozni 16 magra :D
Más kérdés hogy nincs rá szükség, de a grafikában teljesítmény kell, nem úgy mint az általános alkalmazásokban, msn, webböngészés, ezért nincs otthoni CPU 8 magos.
-
vatuszi #5 Ezeken a magokon nem mezei PC-s programok futnak majd, hanem grafikai driverek. És az az alapötlet, hogy ezeket a drivereket könnyebb lesz megírni, mert bár az architektúra egyedi, de az utasításkészlet ismerős lesz a fejlesztőknek.
Ráadásul kézenfekvő a kettős célú felhasználás: ha nem köti le a grafika a kapacitását, akkor (megfelelő libraryn keresztül) mezei PC-s programokból is kihasználható a teljesítménye, például video-, kép- és hangfeldolgozásra. A video-, kép- és hangfeldolgozás ugyanis kiválóan párhuzamosítható.
De ezek szerintem egyelőre csak találgatások, az Intel elindult egy merőben új irányba, és lehet, hogy nem folytatja majd. Vagyis ez lényegében kísérlet. -
#4 és ha akkora magok lesznek mint egy mai VGA-ban egy shader-proci? erre akartam rávílágítani. úgy adtak ki infókat, hogy nem adtak ki semmit. még azt se mondták, hogy a mai kártyáknál (teszem azt egy HD4870) mennyivel lesz gyorsabb? jobb... semmi infó nincs ebben az infóban. -
szily3 #3 Ott a pont! ;) Amúgy egy ilyen akkor mekkora lesz? 45 nanométeren úgy kéne kinézzen, mint egy kisebbfajta VGA. Mekkora Processzorfoglalat kell? Mivel akarják hűteni? Mi a tökömre lesz jó? Nem lehet, hogy az Intel kidobott valami fantáziaképet, és a nagyokos elemzők rögtön 'kitalálták' a terveit?? Mer én ezt kétlem, mikor még a 16 magig sem jutottunk, otthon a 8-at se lehet használni és már négy szálra is nehéz programozni... _?_ -
pasi29uk #2 Nem kell fűtened a szobádat :D -
#1 azért elég sok nyitott kérdés marad. otthini játékra jó lesz? vagy csak pofesszionális körökbe szánják? is-is? mennyibe kerül? meg persze ami fontos: gt300/RV800-hoz képest mit nyújt majd?
megint elmondták a semmit. annyi a biztos infó hogy 2010-ben jelenik meg, és 45 majd 32nm-es lesz. de ezt eddig is tudtuk.