Dear Jay,

We expended a lot of time in many test about this two libraries. :-)

Two test was performed in the exactily same conditions.

This is the code used in test :

public class TestFop {
  public TestFop() {
    String[] clo = {"-d", "-pdf", "/test/prova.pdf", "-xml", "/test/per.xml", 
"-xsl","/test/ReportGeneric.xsl"};

    try {
      long heapSize = Runtime.getRuntime().totalMemory();
      long heapMaxSize = Runtime.getRuntime().maxMemory();
      long heapFreeSize = Runtime.getRuntime().freeMemory();
      Date ini = new Date();
      System.out.println("Tamany heap : "+heapSize);
      System.out.println("Maxim heap : "+heapMaxSize);
      System.out.println("LLiure heap : "+heapFreeSize);

      Fop.main(clo);

      heapSize = Runtime.getRuntime().totalMemory();
      heapMaxSize = Runtime.getRuntime().maxMemory();
      heapFreeSize = Runtime.getRuntime().freeMemory();
      System.out.println("Tamany heap : "+heapSize);
      System.out.println("Maxim heap : "+heapMaxSize);
      System.out.println("LLiure heap : "+heapFreeSize);
      Date fin = new Date();
      long sec = (fin.getTime()-ini.getTime())/1000;
      String hola = "Temps = "+sec+" segonds.";
    }
    catch (Exception ex) {
      ex.printStackTrace();
    }
  }

  public static void main(String[] args) {
    TestFop testfop = new TestFop();
  }

Parametres JVM : -Xms128m -Xmx512m
Size of file per.xml : 501 kb
Lines of file per.xml : about 4.000 lines
Pages generated in file prova.pdf : 117 pages

Time with Xerces  : 1637 seconds
Time with Crimson : 66 seconds

Everybody could test yourself if he would !

Salutations

   

-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Enviado el: viernes, 23 de septiembre de 2005 16:56
Para: [email protected]
Asunto: Re: FOP improvement up to 3000%.

Were the conditions of the two runs exactly the same? For example, if you were 
timing the first run of the Xerces parser and the second run of the Crimson 
parser, caching could account for much of the difference.

Also, such items as configuration differences can have a large impact. If you 
were using the default amount of memory, perhaps Xerces would benefit from a 
change in that setting while Crimson may be more efficient in its use of memory 
and not suffer from using the default. Thus, changing configuration could 
account for at least some of the difference. Your mention that "This library 
give very poor performance where xml file is large" makes me think memory may 
be part of the difference.

I'm sure other issues could factor into it as well.

Of course, Crimson may simply be a much faster parser. I have heard good things 
about Crimson from a number of quarters.

Jay Bryant
Bryant Communication Services
(presently consulting at Synergistic Solution Technologies)





"Xaus, Jaume" <[EMAIL PROTECTED]>
09/23/2005 05:50 AM
Please respond to
[email protected]


To
<[email protected]>
cc

Subject
FOP improvement up to 3000%.











 
Dear friends,
 
We are using FOP api in order to build PDF documents from large Xml files.
 
The FOP package distribution contains Xerces as xml parser. ([Debug] Using 
org.apache.xerces.parsers.SAXParser as SAX2 Parser)
 
This library give very poor performance where xml file is large.
 
We improved up to 3000% the performance simplement changin Xerces for 
Crimson library.([Debug] Using org.apache.crimson.parser.XMLReaderImpl as 
SAX2 Parser)
 
Does anyone know the reason off this performance difference ?
Thanks  
 



Jaume Xaus
Director Departament Java
[EMAIL PROTECTED]


“La confianza, como el arte, nunca proviene de tener todas las respuestas, 
sino de estar abierto a todas la preguntas.” 
Earl Gray Stevens.
 


 

 

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.11.5/110 - Release Date: 22/09/2005


-- 
No virus found in this incoming message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.11.5/110 - Release Date: 22/09/2005
 

-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.11.5/110 - Release Date: 22/09/2005
 

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

Reply via email to