Keresés

Hirdetés

Új hozzászólás Aktív témák

  • freeapro

    senior tag

    válasz DRB #117 üzenetére

    Dehogynem: single core > multi core > hetrogen

    Hogy értsd, hogy miről beszélek: próbáltam DX játékot csinálni, a doc és a példák alapján vertex buffereket csináltam az objektumokra, kiszámoltam a mátrixokat és szépen egyesével kipakoltam a képernyőre. Állati lassú lett. Ekkor elkezdtem mégegyszer átnyálazni az SDK docot és többszázoldalas nyomtatásban tényleg ott volt az egysoros megjegyzés, hogy a graf kártyák azt szeretik, ha nem csak úgy összevisza küldjük az adatokat, hanem az azonos objektumokat egyszerre batchben szeretik kiiratni.
    Hiába pár sor a kódodban egy API hívás ha mögötte több száz soros driver kódot kell végrehajtani és rendszerek között kell kommunikálni aminek nagy overheadje van, akkor azt másképp kell csinálni.
    De ha egy chipeben lesz az egész, lehet, hogy újra elővehetem a programomat és most jól fog futni... :)

    Ennél jobban már tényleg nem tudom elmagyarázni..

  • dezz

    nagyúr

    válasz DRB #117 üzenetére

    "Pont ugyan úgy kell programozni ezt is, mint ahogy eddig is kellett egy CPU(akár több magos)+ diszkrét GPU párost."

    Most miért is ismételgeted ezt, dacára annak, hogy már többször is leírták, személy szerint neked, hogy nem így van? :U (Főleg, hogy ezt már a HD3xxx-től méred.) Esetleg elkerülte a figyelmedet con_di_B #82-es hsz-e? Idézem:

    "A HD3000-es szériánál még csak a Stream volt (Close To Metal?), a HD4000-esek tudnak OpenCL 1.0-át, atomi műveletek és osztott memória támogatás nélkül (= félkarú óriás), és csak a HD5000 után beszélhetünk elfogadható OpenCL támogatásról"

    Tudod, mi volt a Close To Metal? Egyfajta ASM kódolás... A OpenCL már nem ilyen, de az 1.0 meglehetősen kezdetleges volt. Oké, hogy HD5000-től már volt 1.1, no de arra alapuló IGP még nem létezett.

    Továbbá, az OpenCL (vagy akár a DirectCompute) alkalmazása is teljesen más, mint a CPU-s többszálúsítás.

    Ha mindezt továbbra sem érted, hát tényleg maradj a kaptafánál, akarom mondani a multimédiánál... ;)

    lenox: Világos, hogy sok feladatnál sokkal többet számít a nagy memóriasávszél, mint a késleltetések (bár általában nem árt, ha az utóbbi elfedhető). Ezek főleg olyan műveletek, ahol nagyon sok adattal, de nem túl bonyolult műveleteket kell végezni. Végülis a játék-grafika is ilyen. De vannak olyanok is, ahol kevesebb adattal, de jóval bonyolultabbakat. Ilyen lehet adott esetben pl. a ray-tracing (meg ugyebár itt fontos a véletlenszerű memóriahozzáférés hatékonysága is, tekintve pl. a VRAM és a main ram eltérő időzítéseit). Ezeknél elég lehet az a 27 GB/s (feltételezem, ez a Llanora vonatkozik), illetve később "jelentősen több". (Meg ha most nincs, később biztos lesz hozzáférés a L3-hoz is.)

    A Zacate-t (és az Ontariot) meg nyilván az IGP-k és low-end kártyák szintjén kell megítélni ilyen szempontból, nyilván nem egy súlycsoport egy komolyabb GPU-val, akármennyire is egy APU.

    Elég baj, ha ilyen sokáig tart 1-1 számítási feladat indítása a GPU-n, ezen később bizonyára jelentősen javítanak majd, pl. az OpenCL1.2-ben.

    [ Szerkesztve ]

Új hozzászólás Aktív témák