Yes, I know performance is not important for the moment, but it *is* for me, so please don't blame me if I come up with this topic ;)
I noticed a significant performance drop in Gnash. "Significant", because the difference is obvious when interacting with a simple movie on a 800 MHz (!) CPU. My first thought was that it is related to the new timeline design, so I created a little profiling movie that does ten different tests. I compared the results between the current HEAD and a CVS version from May 09 this year. One test was about 40% faster (looping 3-frames movie without animation) but others dropped by nearly 50% - that's much! AGG patches after May09 are not the problem because the current CVS HEAD with AGG sources from May09 shows the same result. Here's a simple scenario: - a single-frame movieclip (just a filled circle) without any kind of animation is played at 100 frames per second with the old *and* the new version [Note: I believe more than 100 fps can't be handled by the frontend timer] - when applying matrix transformations (be it _rotation or _xscale) the old version (May09) comes to 50 fps, while the current version comes to 29 fps at best (42% less). The computed invalidated bounds are the same, so they can't be the problem. The fact that the matrix xform makes the difference leads me to the conclusion that in this case the new timeline design does not matter. I compared the code for character.cpp and matrix.cpp but could not find any relevant part that could cause this slow-down. So, anybody has a clue what's going on? Some patch in May that could have this consequence? Udo PS: Test movie attached. Watch the traces.
profiler.swf
Description: application/shockwave-flash
_______________________________________________ Gnash-dev mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gnash-dev

