We are planning to use FOP in our web application.  The application will be
hosted on a W2K box with dual PIIIs.  We will use FOP in servlets to allow
the user to dynamically generate formatted reports (in PDF) that can be
printed off and inserted in a patients permanent medical file.  Does this
mean we can expect performance problems from our print servlets?

Jim Urban
Product Manager
Netsteps Inc.
Suite 505E
1 Pierce Pl.
Itasca, IL  60143
Voice:  (630) 250-3045 x2164
Fax:  (630) 250-3046

-----Original Message-----
From: Jim Cotugno [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, July 17, 2001 1:10 PM
Subject: RE: Multithreading

> I don't know if anyone has done any extensive testing of concurrency with
> FOP, so please let us know what problems you run into (the
> for example), either via this list, or better yet, via Bugzilla so we can
> track and fix the issues. I've fixed a few places where I found
> issues at one time, but I'm sure there are others I didn't find.

When we attempted to use FOP in a multi-processor, multi-threaded
Windows NT 4.0 environment, we found that FOP actually worked
SLOWER than a single processor and/or single-threaded
environment.  We ran multiple threads that were responsible for
rendering separate documents.  We were trying to reduce the
elapsed time necessary to render thousands of relatively small (10-
20 page) documents.

What we found was running multiple FOP threads on a multi-
processor Windows NT box reduced our total throughput.  We
processed more documents per hour with a single FOP thread than
we did with multiple FOP threads.  Note that I'm refering to total
throughput, not documents per thread per hour.

Some analysis pointed to VERY HIGH context switching going on
when running two FOP threads on a two processor system.  What
this told us was that the two FOP threads were fighting over the
same piece(s) of memory continuously.  This context switching went
away when we ran multiple FOP threads on a single processor
machine or we ran a single FOP thread on a multi-processor

I spent some time looking at the source code, and noticed a large
number of statics being declared all throughout FOP.  This may be a
cause, or it may have something to do in the way the Sun jvm works
on Windows.  I didn't have the time to dig deeper.

I don't remember the exact version of FOP we used for the test.  It
may have been 0.18.1 or 0.19.0-CVS.

Jim Cotugno
email:      [EMAIL PROTECTED]
home email: [EMAIL PROTECTED]
phone:      949-453-2000
fax:        949-453-2001

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

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

Reply via email to