A TTM grafikus memóriakezelés agresszívabb lesz a Linux 7.3-ban

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

Tavaly óta Natalie Vock, a Valve Linuxos grafikus csapatának tagja olyan eseteket vizsgál, amikor az eszközmemória-védelem nem akadályozza meg, hogy a foglalások a GTT-be kerüljenek, amikor kevés a vRAM, és az alkalmazások/játékok elkezdenek versenyezni a videomemóriaért. Nyolc környi átdolgozás után a közös TTM memóriakezelő kódhoz és a cgroup eszközmemória-kódhoz készült fejlesztéseket mostanra előkészítették a Linux 7.3-ba való beolvasztásra.

Vock így foglalta össze a helyzetet a javítócsomag kísérőlevelében:

"Néhány olyan esetet vizsgáltam, amikor a dmem védelem nem akadályozza meg, hogy a foglalások a GTT-ben kössenek ki, amikor kevés lesz a VRAM, és az alkalmazások erősen elkezdenek versenyezni.

Röviden azért történik ez, mert más, nem védett alkalmazások előbb töltik fel a VRAM-ot, mint a védett alkalmazások. Emiatt a TTM visszavesz, és minden más előtt megpróbál a GTT-ben foglalni, végül oda kerül az adott foglalás. A meglévő kilakoltatás-védelem ezt nem tudja megakadályozni, mert soha nem történik kísérlet kilakoltatásra (bár a visszalépést felfoghatjuk azonnali GTT-be történő kilakoltatásként).

Ez a sorozat úgy próbál javítani a helyzeten, hogy speciális esetet vezet be, amikor a foglalást cgroup védi: ahelyett, hogy azonnal visszalépne, a TTM megpróbálja kilakoltatni a nem védett buffereket a tartományból, hogy helyet csináljon a védettnek. Így az alkalmazások valóban ki tudják használni a rendszer által számukra biztosított memória-védelmet, anélkül, hogy pingpong-hatásnak lennének kitéve (csak a védett foglalások lakoltathatnak ki nem védetteket, fordítva soha)."

Vock dolgozik azon is, hogy javítsa a Linuxos játékélményt a korlátozott vRAM-kapacitású rendszereken.

Ezek a javítócsomagok részei a heti drm-misc-next pull csomagnak. Ebben benne van a DMEMCG támogatás a kilakoltatáshoz, és ennek bekapcsolása az AMDGPU és az Xe driverekben is. Az UDMABUF kódból eltávolítottak egy mesterséges, 64 MB-os korlátot, amelyre Xaver Hugl bukkant rá a közelmúltbeli munkája során, amikor a KDE több-GPU-s/eGPU-s élményt javította. Az Allwinner Sun4i DRM driver YUV és 4K támogatása is fejlődött. A Nouveau driver mostantól szintén támogatja a Device Memory Control Groupot (DMEMCG), amelyet szintén Natalie Vock írt a többi fejlesztés részeként.