El mié, 19-03-2014 a las 20:42 +0100, Krzysztof Kosiński escribió:
I grabbed a screencast to illustrate the problem: https://dl.dropboxusercontent.com/u/255376/nocache-vs-cache.webm
Notice that the star could be replaced with a circle or a simple path and the text object doesn't have any impact on the issue. The cause seems to be the larger rectangle in the background. When cache is on it looks like it has to be re-drawn and cached and that seems to take longer than when cache is disabled.
I think the constants used to choose which objects need to be cached need some tweaking. Right now each object has a score that depends on its on-screen area and the complexity of its filter, and the scores are assigned rather arbitrarily. The slowdown is probably caused by many small objects being cached - more time is spent on copying the image data around than on rendering.
Hi Krzysztof,
This file (the one I used for the screencast) has three objects, and one of the objects is irrelevant to the problem. None of them has any filters.
https://dl.dropboxusercontent.com/u/255376/cache-tearing-sample.svg
There's no tearing when the rectangle in the background is removed or scaled down to fit the visible are. The problem seems to be that it's big and goes beyond the limits of the visible portion of the document.
Gez.