Intel Working On TTM Integration For Discrete vRAM Management
More than a decade ago when the open-source graphics driver stack was being modernized with kernel mode-setting and better handling the stack for OpenGL, composited desktops and the like, TTM (Translation Table Maps) was born for managing GPU video RAM by the kernel Direct Rendering Manager drivers. While Intel initially expressed interest in TTM, they ultimately decided to create GEM as the Graphics Execution Manager for handling their video memory management needs. Now in 2021 with Intel aggressively pursuing discrete graphics, they are working on TTM support.
While TTM has been adopted by the AMD Radeon kernel drivers, Nouveau, and other DRM drivers, Intel ended up developing GEM as a different manager that took lessons learned from TTM while adapted to their driver design and graphics hardware at the time. GEM has been working out well for their driver and just having to deal with integrated graphics to date, but now with discrete graphics at play, they are working on TTM integration.
Thomas Hellström of Intel's open-source team posted the initial patch series working to move discrete memory management from GEM to TTM. While as part of their initial discrete GPU bring-up they were working on GEM local memory support, it seems they are now all-in on going for TTM for their discrete vRAM management.
With the current patches the TTM code is used for management and eviction of the local memory region but the patches do note work is underway to support system memory too. Further patches are expected to provide more TTM-based functionality to the Intel kernel graphics driver.
See this patch series for the initial TTM bits for the Intel driver.