English version
Accueil     Ŕ propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis ŕ jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml ŕ l'adresse ocaml.org.

Browse thread
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2007-02-27 (11:28)
From: Daniel_Bünzli <daniel.buenzli@e...>
Subject: Re: [Caml-list] ANNOUNCE: Xmlm

Le 27 févr. 07 ŕ 09:28, Stefano Zacchiroli a écrit :

> What about the performance?

I don't know, I didn't invest a lot of time in profiling, maybe it  
can be improved.

But if you want an unscientific benchmark here you have :

I compare the two programs xmllint (which comes on my system) and  
xmltrip (compiled without any special option) respectively  
distributed with libxml and xmlm. Note xmllint is a C program so we  
are not comparing to libxml's ocaml interface. Besides I have no idea  
how xmllint is written and what it does internally, maybe it does  
more than xmlm does, so we may well be comparing the uncomparable.  
The files are <http://www.ximpleware.com/xmls.zip>, uncompressed this  
is 144 mb of xml files.

On macos 10.4.8, G4 1Ghz, 512mo ram.

Parse only, without building the tree.

> > time ./xmltrip.opt -p -ename ~/tmp/xmls/*.xml
> real    0m53.567s
> user    0m51.562s
> sys     0m1.043s
> > time xmllint --noent --nocdata --noout --nonet --stream ~/tmp/ 
> xmls/*.xml
> real    0m25.264s
> user    0m24.314s
> sys     0m0.725s

Parse only, building an in-memory tree.

> > time ./xmltrip.opt -t -p -ename ~/tmp/xmls/*.xml
> real    2m2.099s
> user    1m44.821s
> sys     0m8.215s
> > time xmllint --noblanks --noent --nocdata --noout --nonet ~/tmp/ 
> xmls/*.xml
> real    1m4.590s
> user    0m47.561s
> sys     0m3.193s