Jochen Maes' email has reminded me of something:

Some performance findings from my FOP PDF generation jobs (between 5.000 
and 50.000 PDFs per job):

Performance killers are:
- Images of any kind (but still better than SVG). A very small GIF image 
(black/white logo)
  can triple the rendering time of a 2-page document. This may be related 
to PDF output only - didn't check.
- SVG (high setup cost) - use images instead wherever possible
- Not enough main memory for a single job (yes, I have some 200 page-jobs
  that don't even fit within 1GB of main memory...). Rendering performance 
  drop to less than 1% once swapping begins, The Sun VM 1.3 seems to have
  a limit for -Xmx of 1GB. JRockit can be used instead.

Note that by "performance killer" I mean things that prevent FOP from 
generating more than 2-3 PDFs per
second on a moderately fast machine.

Interesting points and tips:
- TrueType font embedding did noch affect performance more than you would 
expect (i/o overhead)
- embedding FOP into the application helps a LOT. For most smaller 
documents, the VM setup costs
  are huge in proportion to the rendering time.
- For server use, I can recommend using the -server option for the SUN VM, 
though the performance
  increase was minor (<10%) for my test cases.
- I have found NO memory leaks of any kind while using FOP. For those 
jobs, where the document
  content is relative fixed (2-page with changes in text for each doc), my 
server can run days within
  the same VM instance, constantly formatting, producing 6000 PDFs per 
hour, with a maximum memory
  use of 25M (including VM). This is GOOD NEWS.

Summary of my FOP experience:
- some bugs/missing features (takes some time to find out which FO markup 
works and which doesn't)
- documents with lots (read: LOTS, like 200+x pages) of text can only be 
rendered with
   immense amount of main memory. This is probably being addressed in the 
redesign. Right now,
   it can be a real showstopper.


- good performance
- perfect stability in server use
- source code
- good and active development community (THANKS!)

So, overall, FOP developers:

Thank you for a great job.

Arnd Beissner
Cappelino Informationstechnologie GmbH
Arnd Bei▀ner
Bahnhofstr. 3, 71063 Sindelfingen, Germany
Phone: +49-7031-463458
Fax: +49-7031-463460
Mobile: +49-173-3016917

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to