Hirdetés

Tisztázta a Microsoft a hardveresen gyorsított GPU ütemezést

A May 2020-as Windows 10 frissítésben megjelent új funkciónak leginkább a távolabbi jövőben lesz haszna.

Elég sok kérdés övezte a Windows 10 legújabb, May 2020-as frissítésének egy opcionális újítását, amely a hardveresen gyorsított GPU ütemezés néven fut. A Microsoft publikált is egy blogot, amelyben tisztázzák a részleteket, illetve alapvetően megpróbálják a megfelelő helyiértéken kezelni a fejlesztést.

GPU ütemezéssel már az első WDDM (Windows Display Driver Model) megjelenése óta rendelkezik a Windows operációs rendszer, vagyis lényegében a Windows Vista óta. Ennek bevetésére azért volt szükség, mert nagyjából másfél évtizeddel korábban a GPU-kat elkezdték általános számításokra is használni. A korábbi XPDM erre nem igazán volt alkalmas, mivel a grafikus vezérlők számára sorban küldött feladatokat, és ezek végrehajtása is ebben a beérkezés sorrendjében történt, ugyanakkor ez nem volt baj, abban az időben úgyis egy játék futott a kijelzőn, vagyis mellette nem terhelhette más a hardvert.

A GPGPU-ra való igény azonban új megközelítést írt elő, és ennek megfelelve a WDDM már a kezdetektől alkalmazott GPU ütemezőt, ami koordinálta az egyes, GPU-t terhelő alkalmazások munkafolyamatait. Ez viszont nincs ingyen, vagyis többletterhelést okoz, ami ellen ugyanakkor védekeznek az alkalmazások az extra terhelés elrejtésével. Például amíg a GPU az adott képkockát számolja, addig a CPU már a következő jelenetet készíti elő. Az utóbbira vonatkozó parancsokat kötegelésre kerülnek, és ilyen formában már nem is jelent valós problémát ez a feldolgozási modell. A többletterhelés elrejtése viszont növekszik a késleltetés, ami ellen a grafikus meghajtókba már az AMD és az NVIDIA is beépített különféle trükkös megoldásokat, ezeket nemrég teszteltük is.

A hardveresen gyorsított GPU ütemezéssel némileg megváltozik az eredeti modell. A Windows továbbra is kontrollálni fogja a magas prioritású feladatokat, de a többit lényegében le tudják passzolni a GPU-k beépített ütemezőjének.

A funkció elérhetőségének bejelentését a Microsoft a gyártókra bízza. Természetesen az egész kérdésnek van hardveres oldala, de a GPU-kra vonatkozó terhelés átalakulása miatt a cégek már korábban is rákényszerültek arra, hogy bonyolultabb ütemezést alkalmazzanak a lapkákon belül. Másképp nem működne az eltérő parancslistából származó feladatok aszinkron végrehajtása, tehát pár generációra visszamenőleg, lényegében minden általánosabban tervezett grafikus vezérlő alkalmas lehet a hardveresen gyorsított GPU ütemezésre. A kérdést itt az jelentheti, hogy a meghajtó oldalán akarják-e mindet támogatni, elvégre némelyik dizájn lassan egy évtizede jelent meg.


[+]

Az újítás esetében a Microsoft azért alkalmaz opcionális aktiválhatóságot, mert ma még nem feltétlenül vesz majd észre belőle bármit is a felhasználó, viszont annyira jelentős változást hoz a rendszer működésében az új GPU ütemező, hogy számos felderítetlen probléma forrása lehet. Ilyen szempontból a vállalat még nem meri alapértelmezetten aktiválni a felhasználóknál, ugyanis túl kevés tesztidő van még benne. A Windows 10 operációs rendszerbe épített telemetria, azonban folyamatosan gyűjti az adatokat, ezen belül is azoknak a kritikus hibáknak leírásait, amelyeket a hardveresen gyorsított GPU ütemezés okozott.

A fentiek megszokott módszernek számítanak egy ekkora változásnál, lesznek akik bekapcsolják, és ez a redmondiak telemetriájának ez hatalmas tesztkörnyezetet jelent, amely végeredményben ahhoz fog vezetni, hogy egy, maximum két év múlva a szóban forgó funkció már alapértelmezetten aktív lesz. Utóbbi lesz a váltópont, ugyanis az új alapok több lehetőséget adnak a fejlesztőknek a GPU alkalmazására. A végső cél itt az lehet, hogy maga a grafikus vezérlő hasonló szintre kerüljön, mint a központi processzor. Ezt a korábbi GPU ütemezővel nem igazán lehetett elérni, mert az igencsak behatárolta a hardver használhatóságát. Hiába van például lassan fél évtizede az egyes GPU-kban például QoS támogatás, ez sokat nem ér, ha az operációs rendszer nem tudja lekezelni. De ugyanakkor a funkció elméletben nagyon is hasznos, mert a GPU-k tipikus működése nem jól reagálja le a több alkalmazás futtatását. Bár a Windows 10 lehetővé teszi, hogy több program is létrehozzon több olyan erőforrást, amelynek az alapja ugyanaz a grafikus vezérlő, a teljesítmény tekintetében már jelentős gondok lesznek. Ezt úgy érdemes elképzelni, hogy a felhasználó futtat egy GPU-t terhelő alkalmazást. Annak a sebessége valamekkora, nyilván ez függ a hardver képességeitől, de a lényeg, hogy ha ugyanazon a GPU-n elindul még egy, a példa kedvéért pontosan ugyanolyan terhelést kifejtő program, akkor elméletben azt lehetne várni, hogy majd mindkét applikáció az eredeti teljesítmény nagyjából felével fog futni, mert ezt szoktuk meg a központi processzor szintjén. A GPU-nál azonban ez nincs így, jelenleg a két program az eredeti sebesség töredékén fog futni, még akkor is, ha az adott hardver rendelkezik QoS támogatással. Egyszerűen a szoftveres háttér nincs felkészítve rá.

Ugyan ennyire előre még a hardveresen gyorsított GPU ütemezés sem szaladt, de tulajdonképpen a Microsoft most annak rakja le az alapjait, hogy a GPU-kból igazi multitaszk hardver legyen. Nem ma, nem is jövőre, inkább két-három éves távlatban, de a hosszú távú cél a szóban forgó fejlesztéssel az, hogy a GPU ne a CPU szolgájaként működjön, hanem inkább a társaként, elvégre számos hardver eleve alkalmas erre már ma is, a szoftverkörnyezet hiányzik hozzá.

Azóta történt

Előzmények

Hirdetés