Re: Some considerations

Jon Smirl <jonsmirl-/[email protected]>
Newsgroups gmane.comp.freedesktop.xserver
Message-ID <[email protected]>
--- [email protected] wrote:

> 3) How is current hardware going to like it? Consumer level stuff is fast, but
> has a history of not handling concurrency well. It sounds like you want each  
> app to use Cairo, preferably via the OpenGL back-end. The simplest model would
> be to give each app its own OpenGL context, but I have a feeling that current 
> hardware would really not like that at all.

This made we thing of some different ways to optimize.

Working from the assumption that the OpenGL API will always be available, you
can see that it will be used to various degrees by different windows. For
example the main window manager window is always going to use it to do
compositing and a 3D app is alway going to use it. 

But what about toolkit based windows? Supposed the toolkit has two themes, a
fancy one that uses the GL API for eye candy, etc and a plain one that only uses
Cairo. Even though the GL API is available to the Cario only toolkit version,
the GL API is never going to be touched. 

The graphics libraries can detect this condition. Windows can start out being
allocated in AGP space and being drawn with a software Cairo renderer. Only when
the GL API gets touched do these windows need to get promoted into VRAM. By
being in AGP space it is then possible for the compositor to directly pick up
the window contents. This will be great for simple things like dialogs and
message popups. This also has some neat implications for direct rendered 2D.

From what I've seen I'll bet Cairo to system AGP RAM, that is latter picked up
by the compositing engine will be very competitive to a GL based Cairo. But
we'll still need the GL based Cairo for windows that mix content. You'll also
need the GL Cairo for high end systems that turn on the GL based widget set.

A key performance question will be where does the font bitmap cache live, AGP or VRAM?

=====
Jon Smirl
jonsmirl-/[email protected]

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.