[Intel-gfx] [PATCH] Use buffer objects for binding table and surface-state objects.

Lukas Hejtmanek xhejtman at ics.muni.cz
Tue Nov 4 18:14:56 CET 2008


On Tue, Nov 04, 2008 at 08:33:40AM -0800, Carl Worth wrote:
> For example, in the current driver there's still a one-time allocation
> of memory up front into two regions---one for 3D and one for 2D. The
> percentage given to each is configurable in your xorg.conf file, but you
> only get one number to control the upfront allocation. So what happens
> is if one of these is too small and gets full then performance starts
> suffering very badly. But with GEM we'll be able to dynamically adapt to
> circumstances as needed. So that will be a big win.

So, this would explain why a long running X server gets slower and slower,
right? The 2D buffer is probably highly fragmented and new objects do not fit
in. Is there something that could be done here? Given we have GEM in the
kernel, we could provide something like /proc/buddyinfo also for the GEM
memory manager? Is there any defragmentation algorithm?

-- 
Lukáš Hejtmánek



More information about the Intel-gfx mailing list