[EMAIL PROTECTED] wrote:
> This is not really directly related to DRI, but more a general driver
> problem. I decided to post it here as the XFree86 - groups
> are for members only.

[EMAIL PROTECTED] is an open list...however, I think your issues is 
related to the DRI, so I'll respond here.

> I have been using XFree4.02 for some time and have encountered some speed
> problems. These problems show when I use double buffering for normal windows. 
> That is, I create a pixmap that is the same size as the window and draw stuff
> on it. After all drawing is done the pixmap is copied into the window.
> This works very fast when there are no other pixmaps, but when I have
> even one other pretty large pixmap the performance drops dramatically.
> Also if there is for example galeon or dillo running the same
> thing happens.
> 
> Has anyone any idea why this happens? Simple theory is
> that the video memory is not sufficient for both the backbuffer
> and other pixmaps which causes the backbuffer being put in
> system memory. However, my G400 has 16 MB memory
> and that should be more then enough when running at 1024x768 
> resolution. For example at 32bpp color depth the screen-area
> takes only 1024*768*4 = 3 MBytes. So I could in theory have
> 4 screen-area sized pixmaps and still have 1 MB left.

Jouni,

With the DRI enabled, you'll also need 3 MBytes for the back buffer, 
another 3 for the depth buffer.  Finally, the remainder needs to be 
divided up between texture cache and pixmap cache.  I believe the 
current allocation is to provide a relatively small amount for the 
pixmap cache and the rest for textures.

If you disable the DRI, almost the entire offscreen will be decicated to 
the pixmap cache.  The other thing you could consider is leaving the DRI 
enabled and using OpenGL for graphics rendering where you already have a 
dedicated back buffer allocated.

Two other options come to mind, both require some development:

1) Help w/ some of the more dynamic (and sharing) oriented schemes that 
are targeted at the Radeon, then back port to the MGA driver when it's done.

2) Implement the X double buffer extension so that it uses the dedicated 
OpenGL back buffer in hardware, instead of allocating a pixmap (which 
has the same pixmap cache limitation).

Regards,
Jens

-- 
                                /\
          Jens Owen            /  \/\ _
   [EMAIL PROTECTED]  /    \ \ \   Steamboat Springs, Colorado



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to