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

  • Abu85

    HÁZIGAZDA

    válasz gbors #31228 üzenetére

    Változott a warpok ütemezése, illetve az adatelérés késleltetése nőtt. Ez az új felépítés sajátja, ami miatt az Ampere minimális szintű kihasználásához több warp kell, mint a Turing esetében. Ha viszont az adott shader pont annyi warpot futtat, amennyi a Turing átlapolási minimuma, akkor az Ampere ugyanannyi warppal az extra ALU-k ellenére is lényegesen rosszabbul teljesít, mert a korábbinál több warp kell már neki, hogy átlapolja az adatelérést. Ebben a szituációban a Turing még képes működni, míg az Ampere már hátrányban van, és kihasználtságot veszít. Ez egy viszonylag szűk tartomány, de ki az Ampere minimum működéséhez legalább 2-vel több warp kell, mint a Turinghoz, tehát finomabban kell majd bánni a regiszternyomással.

    Van egy másik tényező is, amire figyelmeztetve vannak a fejlesztők. Régebben opcionális stratégia volt olyan shadereket írni, ahol rámentél az adatlokalitásra, így magát a warpok számát beáldoztad, hogy az adat jó eséllyel ott legyen a multiprocesszoron belüli gyorsítótárakban. Az Ampere esetében ez a stratégia már nem ajánlott. A Turingon viszonylag sokszor működik, de az Ampere-nél elég ritkán válik be.

    Van tehát egy szűk tartomány, ahol hiába hasonló a felépítés a Turinghoz, az Ampere több limitbe ütközik bele, és ez jelentősen ront a kihasználtságán, amit nem igazán tud ellensúlyozni a több ALU-val. A jó hír, hogy ilyen szituáció azért elég ritka, de gyakorlatban is előfordulhat, tehát számolni kell a fejlesztés szintjén az elkerülésével.

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