xsl-list
[Top] [All Lists]

Re: Reducing memeory overheads with xsl

2003-04-17 02:49:54
I'm using the javax.xml.transform.Transformer() if memory and spelling serve
me well.

I am trying to stay away from having any thing thats not 'standard' in all
systems, so I'm sticking to packages that will 'come as standard' in the Sun
Java development enviroment.

Cheers

Simon


----- Original Message -----
From: "Michael Kay" <mhk(_at_)mhk(_dot_)me(_dot_)uk>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Thursday, April 17, 2003 11:30 AM
Subject: RE: [xsl] Reducing memeory overheads with xsl


The answer to this is obviously very processor-dependent. Do tell us
which XSLT processor you are using.

With Saxon, my experience has been that a 25Mb document will transform
in 512Mb of memory. I've heard of people transforming documents of 100Mb
and beyond. But I do question whether this is the right design approach
when things grow to that kind of size.

Michael Kay
Software AG
home: Michael(_dot_)H(_dot_)Kay(_at_)ntlworld(_dot_)com
work: Michael(_dot_)Kay(_at_)softwareag(_dot_)com

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Simon Kelly
Sent: 17 April 2003 08:29
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Reducing memeory overheads with xsl


Hi all,

I currently have the problem that my system is running out of
memeory when processing my xslt.  I have set the max memory
to 526MB (over the 512 I
have) in a vain attempt to get the xsl-processor to use every
ounce of memory.  But it is still keeling over at the point
when I need to work on about 40,000+ tags.

I get this structure form the db

<rowset>
  <row>
    <timestamp>1</timestamp>
    <sig1>1</sig1>
    <sig2>2</sig2>
    ....
    <sign>n</sign>
  </row>
  ....
  <row>
    <timestamp>N</timestamp>
    <sig1>1</sig1>
    <sig2>2</sig2>
    ....
    <sign>n</sign>
  </row>
</rowset>

and what I need to end up with is a <measuring sequence>
containing one of the following for each row.

<measuringdata>
  <timestamp>1</timestamp>
  <sigval>
    <label>sig1</label>
    <value>1</value>
  </sigval>
  ....
  <sigval>
    <label>sign</label>
    <value>n</value>
  </sigval>
</measuringdata>

The whole final file should only be around the 6MB mark, and
I'm creating it in 1/2 a gig of ram, so I have a couple of questions.

1)  Why does it run out of memory if the file sizes are 1/64
of max memory?
2)  Is there a way to generate the file in a more memory
efficient way??

Your help, as always, would be most appreciated.

Cheers

Simon


Institut fuer
Prozessdatenverarbeitung
und Elektronik,
Forschungszentrum Karlsruhe GmbH,
Postfach 3640,
D-76021 Karlsruhe,
Germany.

Tel: (+49)/7247 82-4042
E-mail : kelly(_at_)ipe(_dot_)fzk(_dot_)de


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>