A Linux kernel 6.16-rc5 verzióban betöltött egyik javítás akár 30%-kal is lecsökkentette az i915 Intel GPU-k teljesítményét

Az Arch Linux felhasználói teljesítmény-visszaesést tapasztaltak a Linux kernel 6.14 és a legfrissebb 6.16-rc5 verziók között, különösen az Intel Core Ultra 7 155H processzorral és az Xe 128 EU grafikus egységgel szerelt Lenovo ThinkPad E14 Gen6 gépeken. A problémát különböző tesztekkel igazolták, mely alapján a grafikai teljesítmény akár 13 százalékkal is csökkenhetett, míg más felhasználók bizonyos terhelések alatt már 30 százalékos teljesítmény csökkenésről számoltak be. A teljesítmény visszaesés Unigine Valley, Heaven és Superposition benchmarkokban mutatkozott meg, valamint kisebb mértékben a Geekbench OpenCL és Vulkan mérésekben is.

A Linux kernel 6.16-rc5 verzióban betöltött egyik javítás akár 30%-kal is lecsökkentette az i915 Intel GPU-k teljesítményét

A probléma gyökere és az azt követő javítási kísérletek

A probléma forrása egy korábbi kernelt érintő változtatásban keresendő, amely a tmpfs fájlrendszerben bevezette a nagy méretű lapok támogatását. A módosítás ugyan lehetővé tette a nagyobb lapok használatát a memóriahatékonyság javítása érdekében, ám az i915 grafikus meghajtó nem adott megfelelő méretinformációt a foglalásokhoz. Emiatt a rendszer nem tudott PMD-méretű lapokat kiosztani, ami negatívan befolyásolta a GPU teljesítményét. A fejlesztők szerint a problémát az inode méretének írási méretként való felhasználásával lehet megoldani a shmem_read_folio_gfp függvényben, amely lehetővé teszi a megfelelő nagyságú lapok lefoglalását.

A Patchre szerencsére nem kellett nagyon sokat várni

Baolin Wang egy javítást készített a kernelbe, amely pontosította a shmem kezelését, és kiküszöbölte a hibát az i915 esetében. A patch a közösségi tesztek során visszaállította a grafikus teljesítményt az eredeti értékekre, így a korábbi i915-re vonatkozó javítást már nem szükséges beolvasztani. A megoldást több fejlesztő és tesztelő is megerősítette, köztük Patryk Kowalczyk és Ville Syrjälä fejlesztők is. A változtatás várhatóan visszamenőlegesen is be fog kerülni a 6.12 utáni kernelverziókba, hogy minél szélesebb körben megszüntesse a hibát.

Gábor a Pingvinbázis alapítója és főszerkesztője, több mint 20 éves tapasztalattal rendelkezik a Linux rendszerek és az Open Source szoftverek területén. Jártas a Python, és a PHP nyelvben, valamint a BASH scriptelésben is.