Animations are notified for updates way too often right now animations are notified to update (and thus normally cause a redraw) 30x per second, or something similar *even* if they have nothing to do. We need to fix the animation notification system to be much smarter. Animations should be able to register for the next callback at a specific time. The scheduler could then be smart enough to schedule the timer for the minimum of all of these. Or each animation could carry a "update after" date, and only mark it self as needing update when the time passes that date (unless manually invalidated for other reasons (like applying to an element which needs to update sooner, etc.)
This partly works in trunk, but we still have issues. We're basically calling targetElement->svgAttributeChanged(attributeName) for XML animations, and setNeedsStyleRecalc() for CSS prop animations, regardless of whether the animation contributes to the currently animated value or not, causing lots of unnecessary work being done.