On Wed, 22 Jan 2003, Darren Landrum wrote:
On Wednesday, January 22, 2003, at 07:06 AM, Steve
Harris wrote:
> Something I've been thinking of recently is palming off the rendering
> to
> OpenGL, modern cards have large texture memories so they can hold most
> of
> the graphics on the card, and not need to bother the main RAM.
<snip/>
I seem to recall a Linux-related project to make a
window manager that
was OpenGL running on a video card. I can't recall the name of it
offhand, though.
You might be thinking of Rasterman and evas (enlightenment 0.17).
It's most definitely bleeding edge, and probably not suitable for audio.
All is not sweetness and light, see the FAQ:
http://enlightenment.org/pages/faq.html
Evas is a hardware-accelerated canvas API for X-Windows that can draw
anti-aliased text, smooth super and sub-sampled images, alpha-blend, as
well as drop down to using normal X11 primitives such as pixmaps, lines
and rectangles for speed if your CPU or graphics hardware are too slow
Why is Evas faster with software acceleration than than when I run it
with hardware acceleration switched on?
When run with hardware acceleration Evas uses the GL libraries on your
system; this means that if you have Mesa installed then Evas will use
the Mesa GL liberties. Mesa however only provides software acceleration
and therefore will run slow compared to Evas's in-built software mode. If
you have a video card that supports hardware acceleration then you should
attempt to get the manufacturers own GL drivers for your computer and
install them making sure that none of the Mesa libraries are left behind
and that where needed symbolic links are made to the real drivers.
and
Why is my CPU usage at 100% when I use a program running Evas?
When used in software mode, Evas will use a lot of CPU. In hardware mode
however it depends on your OpenGL drivers. What a lot of drivers do is
limit buffer buffer swaps to vertical blanking gaps only. This means that
the buffers wont be swapped until the vertical blanking gap is reached,
however since there is no method of using interrupts under Linux/X the GL
drivers have to poll in a tight loop waiting for the gap. Also if the GL
libraries are accessing the GFX hardware directory then if the hardware
is busy then the app will sit and poll registers until the hardware is
ready. It's basically down to your OpenGL drivers. It's worth noting
as well that your CPU will be high whenever you run evas_test as it is
pushing your system to try and achieve the highest frame rate it can,
a situation that most software using Evas will never be in.
--
Sam Chessman chessman (a)
tux.org
First do what's necessary, then what's possible, finally the impossible.