Andreas L Delmelle wrote:
On Jan 24, 2007, at 04:30, Daniel Noll wrote:
Andreas L Delmelle wrote:
If it turns out that 0.93 is slower on any JVM, then if you can,
please send us the FO, so we can investigate what might be causing
this. Is there anything special about the FO-file? (i.e. lots of
markers, images, tables, particular FO-constructs...)
FWIW we've noticed a similar issue with speed here, although in our
case we were comparing the speed of 0.20.5 to 0.93 so we hadn't
narrowed it down to being the very latest version. The only thing
peculiar about our own FO files is that they are relatively heavy on
table usage. and often have large images (>1024px) which are scaled
down to a small size (~120px) for thumbnails.
Important question that hasn't been asked in this particular thread:
Does this occur only when using the AWT renderer, or is there a similar
drop in processing speed when rendering to PDF or PS?
If it happens only with AWT, then the used JVM (AWT implementation)
could be a key factor...
PDF is unchanged so yeah, it's probably something to do with the way AWT
is being called.
Also, the slowdown is much more noticeable on Windows 2000. On Windows
XP it seems to be something like 1-2 times slower, on Windows 2000 we
measure it being more like 2-3 times slower.
On Windows 2000, pausing the application randomly during the conversion,
it almost always pauses at the following point:
at sun.font.SunLayoutEngine.nativeLayout(Native Method)
at sun.font.SunLayoutEngine.layout(SunLayoutEngine.java:133)
at sun.font.GlyphLayout$EngineRecord.layout(GlyphLayout.java:611)
at sun.font.GlyphLayout.layout(GlyphLayout.java:410)
at sun.font.ExtendedTextSourceLabel.createGV(ExtendedTextSourceLabel.java:308)
at sun.font.ExtendedTextSourceLabel.getGV(ExtendedTextSourceLabel.java:294)
at
sun.font.ExtendedTextSourceLabel.createLogicalBounds(ExtendedTextSourceLabel.java:208)
at sun.font.ExtendedTextSourceLabel.getAdvance(ExtendedTextSourceLabel.java:117)
at java.awt.font.TextLine.init(TextLine.java:264)
at java.awt.font.TextLine.<init>(TextLine.java:110)
at java.awt.font.TextLine.fastCreateTextLine(TextLine.java:952)
at java.awt.font.TextLayout.fastInit(TextLayout.java:585)
at java.awt.font.TextLayout.<init>(TextLayout.java:374)
at
org.apache.fop.render.java2d.Java2DFontMetrics.setFont(Java2DFontMetrics.java:306)
at
org.apache.fop.render.java2d.Java2DFontMetrics.hasChar(Java2DFontMetrics.java:360)
at
org.apache.fop.render.java2d.FontMetricsMapper.hasChar(FontMetricsMapper.java:175)
at org.apache.fop.fonts.Font.hasChar(Font.java:189)
at org.apache.fop.fonts.Font.getCharWidth(Font.java:231)
at
org.apache.fop.layoutmgr.inline.TextLayoutManager.getNextKnuthElements(TextLayoutManager.java:632)
at
org.apache.fop.layoutmgr.inline.LineLayoutManager.collectInlineKnuthElements(LineLayoutManager.java:658)
at
org.apache.fop.layoutmgr.inline.LineLayoutManager.getNextKnuthElements(LineLayoutManager.java:593)
at
org.apache.fop.layoutmgr.BlockStackingLayoutManager.getNextKnuthElements(BlockStackingLayoutManager.java:284)
at
org.apache.fop.layoutmgr.BlockLayoutManager.getNextKnuthElements(BlockLayoutManager.java:113)
at
org.apache.fop.layoutmgr.FlowLayoutManager.getNextKnuthElements(FlowLayoutManager.java:106)
at
org.apache.fop.layoutmgr.PageSequenceLayoutManager$PageBreaker.getNextKnuthElements(PageSequenceLayoutManager.java:272)
at
org.apache.fop.layoutmgr.AbstractBreaker.getNextBlockList(AbstractBreaker.java:554)
at
org.apache.fop.layoutmgr.PageSequenceLayoutManager$PageBreaker.getNextBlockList(PageSequenceLayoutManager.java:264)
at org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:301)
at org.apache.fop.layoutmgr.AbstractBreaker.doLayout(AbstractBreaker.java:263)
at
org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:157)
at org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:385)
at org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:148)
at
org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:378)
at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:194)
Interestingly when I try this random pausing experiment on Windows XP,
it never stops there. I can't explain that...
Daniel
--
Daniel Noll
Nuix Pty Ltd
Suite 79, 89 Jones St, Ultimo NSW 2007, Australia Ph: +61 2 9280 0699
Web: http://nuix.com/ Fax: +61 2 9212 6902
This message is intended only for the named recipient. If you are not
the intended recipient you are notified that disclosing, copying,
distributing or taking any action in reliance on the contents of this
message or attachment is strictly prohibited.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]