[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[E-devel] Evas vs Gtk/Gdk: why the difference of perfs is so important?



Hi,

I ran on my P3 1Ghz a small (stupid) test to compare Evas and Gdk
performances: with Evas, I displayed a big image (1600x1200) in a
smaller window (1300x1100) and I dragged the image quickly with the
mouse. The dragging was laggy and the cpu usage was almost 100%. I then
ran exactly the same test with gqview (a gtk image viewer) with the
same image and the same viewport size (1300x1100). There, the dragging
was smooth and the cpu usage around 50%.

I know this test is not representative (it shows a special case with no
accurate results) but it just illustrates the feeling I have: evas
seems a lot slower than the renderers of Gtk and QT, when it has to
refresh a big part of its viewport. Of course, using the GL engine
improves the perfs a lot, but the comparison doesn't make sense
anymore: Evas is hardware-accelerated while Gtk is not.

I'd just like to know why the difference is so important? Is Gtk
somehow hardware-accelerated (xrender?), or is it because Evas and Gdk
just do not do things the same way? I don't think the rendering
routines of Evas are to blamed since they seem even more optimized
than what other libs use, I just don't understand the difference of
perfs.
Can you tell me more about that?

Regards,
Simon TRENY <MoOm>