[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-commit] gnash ChangeLog backend/render_handler_agg.cpp
From: |
Bastiaan Jacques |
Subject: |
Re: [Gnash-commit] gnash ChangeLog backend/render_handler_agg.cpp |
Date: |
Tue, 6 Nov 2007 04:35:51 +0100 (CET) |
On Tue, 6 Nov 2007, Bastiaan Jacques wrote:
From my own testing I conclude the same; the specialized clipping class
impacts on performance negatively. Interesting to note that this is true
even when testing movies with complex clipping regions.
So I think that the clipping patch should probably be reverted.
AGG docs on this class:
"Class renderer_mclip performs clipping to multi-rectangle clipping
areas, but its performance depends on the number of clipping rectangles."
"The cost of creation is minimal, it's just initializing of the class
member variables. But renderer_mclip allocates memory when you add new
clipping rectangles and deallocates it when destroying. It uses the
pod_deque class that allocates blocks of memory of equal size and never
reallocates it. When you reset clipping, the memory is not deallocated,
it's reused. The renderer_mclip deallocates memory only when destroying.
This technique is widely used in AGG and prevents from deep memory
fragmentation."
Bastiaan