Keresés

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

  • Abu85

    HÁZIGAZDA

    válasz KillerKollar #36511 üzenetére

    Attól, hogy a multiprocesszort nem arra tervezték, hogy egyszerre működik a tensor, illetve a fő ALU-k. Ezeknek nincs külön erőforrása, hanem közösen osztoznak minden regiszteren és gyorsítótáron. Ergo a tensor ront a konkurens warpok számán. Ha ezt nagymértékben teszi egy pillanatban, akkor a hardver nagyon nehezen tud működni, mert sok ALU számára nem lesz elérhető adat, amivel dolgozhat. Ilyenkor lassú memóriaelérés következik, ami több száz üres ciklust jelent. Mivel natívban nincs tensor terhelés, így a konkurens warpok száma magas maradhat, vagyis jóval ritkábbak a több száz üres ciklust futó shaderek.

    Ezen kétféleképpen lehet javítani. A DLSS alkalmazásánál az NV azt ajánlja, hogy a konkurens warpok száma a tensor nélküli működéshez megadott limiteknél lényegesen magasabb legyen, és ezen belül az elméletben futtatható warpszám 70%-át be tudja tölteni minden shader. Normál esetében elég a 40% is, de DLSS-nél nagyon ajánlott ezt kerülni, mert ha innen vonja ki az erőforrást a tensor feladat, akkor jó eséllyel csak egy warpnak marad regiszterterület és LDS, vagyis egy feldolgozótömb garantáltan malmozik vagy száz ciklust a feladatok végrehajtása között.
    A másik lehetőség a hardveres megoldás, külön regiszterterületet kell kapnia a tensornak. Ez viszont kúrva sok tranzisztort igényelne.

    [ Szerkesztve ]

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

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