[Intel-gfx] [ANNOUNCE] xf86-video-intel 2.8.0

Barry Scott barry.scott at onelan.co.uk
Mon Aug 3 17:12:22 CEST 2009


Ben Gamari wrote:
> Adding the list again. This is a useful discussion for everyone to see.
>
> On Mon, Aug 03, 2009 at 02:48:02PM +0100, Barry Scott wrote:
>   
>> We see that the GPU is 10% used when we hit problems with
>> compositing using an OpenGL
>> compositor (we wrote our own - its for a kiosk type environment).
>>     
>
> Did you mean CPU? If not, how are you measuring GPU utilization? I don't
> think intel_gpu_top is going to give you a particularly useful number,
> at least not the overall "ring idle" number. If GPU usage is low, it
> would be interesting to see which "task" is most busy (although for
> some reason, even at idle intel_gpu_top shows that "Projection and LOD",
> "Bypass FIFO", and "Color Calculator" are all 100% busy on my system).
>   
On a Dual Core 2 we see ~10% CPU and intel_gpu_top show no task greater then
10%. I will have to setup the test environment again and provided details of
workload, CPU load and GPU top output to help analysis.
>   
>> Have you got as far as analysing what might need fixing to get the
>> frame rates to match refresh rates?
>>
>>     
> It depends upon what the bottleneck is in your particular instance. In
> general, no, not a whole lot has been done. I know in the case of Expo,
> there are lots of change domain events, which might indicate a fallback
> of some type if being triggered. Other than that I've got nothing
> though.
>   
We think that the problem is that the GPU is basically serially reused. 
Only one
window at a time gets GPU resources. This means that when the compositor
creates the next frame and uses glxSwapBuffers to draw to screen the GPU 
goes
idle waiting for the scan out line to be  outside the visible area 
before doing the swap.
All others windows block in X waiting for the GPU resource to be free.

What we think needs to happen is the Intel driver/X11 needs to be able 
to allow
some parallel execution on the GPU. For example a movie player should be 
able to
use XV to write out the next frame of video in parallel with compositing 
writing
the composited frame. And we have applications that want to composite 9 
movie
players on to the screen, so would like all 9 in parallel if the 
hardware can do it.

Barry




More information about the Intel-gfx mailing list