You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by Andreas Delmelle <an...@telenet.be> on 2008/05/12 15:58:40 UTC

Re: svn commit: r655500 - in /xmlgraphics/fop/trunk/src/java/org/apache/fop/fo/properties: CommonBorderPaddingBackground.java CondLengthProperty.java PropertyCache.java

On May 12, 2008, at 15:42, adelmelle@apache.org wrote:
>
> URL: http://svn.apache.org/viewvc?rev=655500&view=rev
> Log:
> Extended caching to CondLengthProperty  
> CommonBorderPaddingBackground.BorderInfo and  
> CommonBorderPaddingBackground.


This /did/ have quite some effect...

For a FO document with one page-sequence containing +/- 7300 tables  
with +/- 87000 cells in total, having a lot of duplicate border/ 
padding specs, this saved me some 64MB of heap needed to avoid an  
OOMError. The same document needed 704MB before the change, but  
completes with 640MB after (haven't tried any lower, yet ;-))

For those interested in comparing the results with and without  
caching, I have committed a change a few days ago which allows to  
deactivate the cache, by passing

-Dorg.apache.fop.fo.properties.use-cache=false

to the VM.

It could also turn out to be of use in multi-threading environments,  
if contention would somehow turn out to slow the process down, and  
you don't mind the extra heap space. You can always try turning  
caching off, which should avoid any synchronization overhead (locking  
is restricted to private operations).



Cheers

Andreas