This is the mail archive of the
docbook-apps@lists.oasis-open.org
mailing list .
RE: Chunking performance
- From: Jeff Beal <jeff dot beal at ansys dot com>
- To: 'Norman Walsh' <ndw at nwalsh dot com>, docbook-apps at lists dot oasis-open dot org
- Date: Fri, 06 Sep 2002 11:56:07 -0400
- Subject: RE: DOCBOOK-APPS: Chunking performance
Well, I had to go for this one. I'm building a single book from our
documentation set using the rootid parameter. This is our biggest book, and
creates about 1500 HTML pages. I am using Saxon 6.52.
StyleSheet Build Time Max Memory
Usage
=====================================================================
1.54.1/chunk.xsl 46 min. 746 MB
chunk.xsl (chunk.fast=1) 44 min. 983 MB
chunkfast.xsl 41 min. 1,102 MB
So, it seems to me that the speed improvement isn't worth the extra memory
usage.
As a sidenote, I noticed that all of our filenames have '.html.html' instead
of just '.html'. Our dbhtml's include the .html extension, and it appears
that the stylesheet is adding an extra one. Is this a bug or a feature? It
hasn't happened this way before. (Of course, memory usage still prevents me
from moving up past 1.48.1, which only uses 400 MB when I do the entire
<set>.)
Jeff Beal
-----Original Message-----
From: Norman Walsh [mailto:ndw@nwalsh.com]
Sent: Friday, September 06, 2002 8:02 AM
To: docbook-apps@lists.oasis-open.org
Subject: DOCBOOK-APPS: Chunking performance
I've been experimenting with improving the performance of the chunking
stylesheets. The primary goal of my experiments was to get rid of the
hairy (and probably expensive) recalculation of prev/next for each
chunk.
If you're curious, please give
http://nwalsh.com/chunk.xsl
and
http://nwalsh.com/chunkfast.xsl
a try. Try using chunk.xsl with chunk.fast=0 and chunk.fast=1, the
output should be the same, but the "fast" version should be faster.
Using fast chunking requires support for the exsl:node-set() function
(which Saxon and xsltproc provide). Without it, there won't be any
difference.
The chunkfast.xsl stylesheet may be marginally faster than even the
fast version of chunk.xsl. It avoids calling exsl:node-set()
repeatedly, but will crash and burn if that function isn't supported.
Be seeing you,
norm
--
Norman Walsh <ndw@nwalsh.com> | It is as easy for the strong man
http://www.oasis-open.org/docbook/ | to be strong, as it is for the
Chair, DocBook Technical Committee | weak to be weak.--Emerson