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 Keiron Liddle <ke...@aftexsw.com> on 2001/09/21 10:35:40 UTC

Performance and java 1.1

Hi All,

I have been doing some performance testing so we can get an idea of how
things might be improving (or getting worse) with changes to the code.
There are three types of tests. I have used 6 fo documents that are
generated 500 times.
- for each document a new jvm is started, so 3000 documents in 3000 jvm's
in serial (about 344m)
- use only one jvm for all documents and create them all in serial (about
57m)
- use one jvm and a thread for each document, each thread then does that
document 500 times (a long time)

The actual numbers will depend on the documents size, complexity and
inclusion of certain elements such as graphics. The threaded test will also
depend on how many threads are using fop at the same time. This is mainly
to give a general idea.

Some recent changes have improved the times by about 1 - 2% but one change
that I have tried has made about a 60% improvement with the threaded test.
This is by simply using HashMap instead of Hashtable. This is very
significant for cocoon and others who may be using fop in a threaded
environment. The time is changed from being twice as slow as serial to
faster than serial.

So the question is: can we drop java 1.1 support and use better data
structures?


These numbers are for 6 documents 8 times each.
--------------
With Hashtable
6 documents x 8

One JVM in serial
user  1m2.040s
user  1m2.560s

Threaded
user  1m54.780s
user  1m56.580s

---------------
With HashMap

One JVM in serial
user  0m59.260s

Threaded
user  0m44.780s
user  0m45.660s
user  0m45.700s

This is the user time using unix "time" which is actual processor time for
the process.

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by Christian Geisert <Ch...@isu-gmbh.de>.
Alex McLintock wrote:

[..]

> PS What are the rules for an "official vote". I have been told off before
> for voicing my opinion about a vote in another Apache project. Basically
> I was told I couldn't vote because I hadn't contributed any source.
> Shockingly enough this is true for FOP too.

see http://xml.apache.org/decisions.html

So you are allowed to vote but it won't count ;-)


Christian

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by Alex McLintock <al...@yahoo.com>.
> Keiron Liddle wrote:
> [..]
> > So the question is: can we drop java 1.1 support and use better data
> > structures?

 --- Christian Geisert <Ch...@isu-gmbh.de> wrote: 
> +1   (I think we should make this an "official vote")

I think that FOP is not really usable in Applets which is the only sensible 
reason for supporting JDK 1.1

PS What are the rules for an "official vote". I have been told off before
for voicing my opinion about a vote in another Apache project. Basically
I was told I couldn't vote because I hadn't contributed any source.
Shockingly enough this is true for FOP too.

Alex


=====
Alex McLintock        alex@OWAL.co.uk    Open Source Consultancy in London
OpenWeb Analysts Ltd, http://www.OWAL.co.uk/ 
SF and Computing Book News and Reviews: http://news.diversebooks.com/
Get Your XML T-Shirt <t-shirt/> at http://www.inversity.co.uk/

____________________________________________________________
Do You Yahoo!?
Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk
or your free @yahoo.ie address at http://mail.yahoo.ie

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by Christian Geisert <Ch...@isu-gmbh.de>.
Keiron Liddle wrote:

[..]

> So the question is: can we drop java 1.1 support and use better data
> structures?

+1   (I think we should make this an "official vote")

and AFAIK at the moment fop does not work with jdk1.1 anyway...


Christian

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by Bertrand Delacretaz <bd...@codeconsult.ch>.
> So the question is: can we drop java 1.1 support and use better data
> structures?

+1 for this:

-even switching to a 1.2 JVM (+hotspot) without code changes often brings big 
performance improvements compared to 1.1, so IMHO forcing users to 1.2 is a 
good thing for FOP in general

-the perspective of 60% performance improvements is certainly enticing...

 -- Bertrand Delacrétaz, www.codeconsult.ch
 -- web technologies consultant - OO, Java, XML, C++

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by Karen Lease <kl...@club-internet.fr>.
Keiron Liddle wrote:
> 
> Hi All,
> 
> I have been doing some performance testing so we can get an idea of how
> things might be improving (or getting worse) with changes to the code.
[snip]
> So the question is: can we drop java 1.1 support and use better data
> structures?


Interesting results!
With java 1.4 just around the corner, I think we can and should "byte"
the bullet and stop trying to keep FOP compilable with Java 1.1. I know
there are a few loyal Fop users out there whose corporate structures are
still several versions behind. It's too bad for them, but FOP _is not_
legacy software and should be able to move quickly.

It's also hard for us to keep the code compatible since I suppose almost
all of us are developing on at least Java 1.2.
So +1 for me.

Karen

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


Re: Performance and java 1.1

Posted by ro...@cluestream.com.
I would add to the consensus here ... I believe that requiring Java 2
collection classes is more than reasonable, particularly for this project.
I'm not sure that anyone is going to have much success deploying bleeding
edge technologies like XSL:FO if they are trapped in a 2-3 year old Java
platform.

All customers I am working with who are doing PDF rendering with FOP
are all on 1.3, 1.3.1 JVMs ... they are early adopters and technophiles by
definition.  The other guys are still using TeX  ;-)

Besides, 1.1 users can work around the use of Java 2 collection classes if
they absolutely have to, by using Sun's collections.jar and changing the
package imports in the source code.

- Rob



---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


RE: Performance and java 1.1

Posted by Jim Wright <jw...@palgraphics.com>.
Hey Keiron:

If you're trying to build a consensus on this issue, I'd certainly vote for
dropping 1.1 support here -- especially as FOP moves forward with new design
and layout initiatives.

jw

-----Original Message-----
From: Keiron Liddle [mailto:keiron@aftexsw.com]
Sent: Friday, September 21, 2001 3:36 AM
To: fop-dev@xml.apache.org
Subject: Performance and java 1.1


Hi All,

I have been doing some performance testing so we can get an idea of how
things might be improving (or getting worse) with changes to the code.
There are three types of tests. I have used 6 fo documents that are
generated 500 times.
- for each document a new jvm is started, so 3000 documents in 3000 jvm's
in serial (about 344m)
- use only one jvm for all documents and create them all in serial (about
57m)
- use one jvm and a thread for each document, each thread then does that
document 500 times (a long time)

The actual numbers will depend on the documents size, complexity and
inclusion of certain elements such as graphics. The threaded test will also
depend on how many threads are using fop at the same time. This is mainly
to give a general idea.

Some recent changes have improved the times by about 1 - 2% but one change
that I have tried has made about a 60% improvement with the threaded test.
This is by simply using HashMap instead of Hashtable. This is very
significant for cocoon and others who may be using fop in a threaded
environment. The time is changed from being twice as slow as serial to
faster than serial.

So the question is: can we drop java 1.1 support and use better data
structures?


These numbers are for 6 documents 8 times each.
--------------
With Hashtable
6 documents x 8

One JVM in serial
user  1m2.040s
user  1m2.560s

Threaded
user  1m54.780s
user  1m56.580s

---------------
With HashMap

One JVM in serial
user  0m59.260s

Threaded
user  0m44.780s
user  0m45.660s
user  0m45.700s

This is the user time using unix "time" which is actual processor time for
the process.

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org


RE: Performance and java 1.1

Posted by Mikko Honkala <ho...@tml.hut.fi>.
Dear FOP developers,

I'm not a committer (I've sent few patches, though :), so I don't get a
official vote, but as the member of the X-Smiles project, I would really
like to see continued support for Java 1.1.

One of our target platforms is Open Source Java platform Kaffe, which is
roughly Java 1.1.8 compatible. We are currently able to run FOP 0.20.1 on
Kaffe using our own derivation of AWTRenderer.

So unofficial -1 on dropping jdk 1.1 support :)

Mikko Honkala
X-Smiles http://www.x-smiles.org/

> -----Original Message-----
> From: Keiron Liddle [mailto:keiron@aftexsw.com]
> Sent: 21. syyskuuta 2001 11:36
> To: fop-dev@xml.apache.org
> Subject: Performance and java 1.1
>
>
> Hi All,
>
> I have been doing some performance testing so we can get an idea of how
> things might be improving (or getting worse) with changes to the code.
> There are three types of tests. I have used 6 fo documents that are
> generated 500 times.
> - for each document a new jvm is started, so 3000 documents in 3000 jvm's
> in serial (about 344m)
> - use only one jvm for all documents and create them all in serial (about
> 57m)
> - use one jvm and a thread for each document, each thread then does that
> document 500 times (a long time)
>
> The actual numbers will depend on the documents size, complexity and
> inclusion of certain elements such as graphics. The threaded test
> will also
> depend on how many threads are using fop at the same time. This is mainly
> to give a general idea.
>
> Some recent changes have improved the times by about 1 - 2% but one change
> that I have tried has made about a 60% improvement with the threaded test.
> This is by simply using HashMap instead of Hashtable. This is very
> significant for cocoon and others who may be using fop in a threaded
> environment. The time is changed from being twice as slow as serial to
> faster than serial.
>
> So the question is: can we drop java 1.1 support and use better data
> structures?
>
>
> These numbers are for 6 documents 8 times each.
> --------------
> With Hashtable
> 6 documents x 8
>
> One JVM in serial
> user  1m2.040s
> user  1m2.560s
>
> Threaded
> user  1m54.780s
> user  1m56.580s
>
> ---------------
> With HashMap
>
> One JVM in serial
> user  0m59.260s
>
> Threaded
> user  0m44.780s
> user  0m45.660s
> user  0m45.700s
>
> This is the user time using unix "time" which is actual processor time for
> the process.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
> For additional commands, email: fop-dev-help@xml.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org