Keresés

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

  • Robitrix

    senior tag

    válasz Viktor77 #9 üzenetére

    Az, hogy egy játék adott pillanatokban használ például 8 magot(vagy szálat) nem jelenti azt, hogy tartosan nagy mértékben le is terhel 8-at. Egy játék program tipikusan fő feladatban használ 1-2 magot, amin intenziven számol. a többi magokon leginkább kisebb alkalmi események számolása zajlik. például megyek előre egy FPS stilusú játékban és tűzet nyitok valamire. erre, hogy ne fő cselekményt számoló programágat terhelje egy szubrutin hívással , ezért elindít egy plusz szálat, ahol mondjuk kiszámolja a lövés hatását és kinézetét. Persze egy lővés hatásának kiszámolása lehet csak pár század másodperc proci időt igényel. így amikor megvan az eredménye, akkor program mag vagy szál leáll. vagyis egy elvben 8 magot használó program átlagos maghasználata is lehet simán 3,17 mag terhelés... :) Olyan játék programot még nem igazán tudtak irni, ami arányosan és egyenletesen képes adott pillanatban szétterhelni a számítási feladatokat az össze rendelkezésre álló mag és szál közt. ilyesmi csak egy Cinebench szerű programban lehetséges, ahol gyakorlatilag az össze mag és szál ugyan azt a kódot futatja legfeljebb eltérő adatokat feldolgozva. Egy játék program annyira esetleges és gyakran véletlenszerű kódsorozatok futásából áll, hogy igazán nem teríthető egyenletesen és optimálisan a magok közt. Az, hogy egy task kezelőben például úgy látjuk, hogy viszonylag egyenletesen terheli a magokat inkább illuzió. Mivel a proci maok teljesítménye kis idő szeletekben kerül felhasználásra a gépben futó programok és taskok közt. Így ugyan az program ág simán megjárhatja 1 másodpercen belül az összes magot és szálat. Ezért van az, hogy kevés magon futva simán a proci átlagos terheltsége 100% közelében szenved. sok mag és szál mellett meg vigan elvan 30-40%-on az átlagos terheltség.

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