473,591 Members | 2,842 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

XSL transform of a 30MB XML file

Hi,
When applied an XSL transform to a file bigger than 25 MB,
I've noticed big values for Mem. and VM :about 70,000K.
VM size didn't decrease even after 24 hours.
Calling the GC, Mem. usage and VM decreased immediately to
a reasonable size(<20,000K).

I'm wondering is there is a better way to manage XSL
transform of a big file.
Also I have no explanation why VM is still big if I'm not
calling GC from my program.

Thanks,
GD.

=============== =============== ==============
I tried several options but the result is similar.
1.
XPathDocument doc = new XPathDocument(X MLfile);
....
xslt.Transform( doc,null, stream,null);

2.
xslt.Transform( XMLfile, Rezfile, resolver);

Nov 11 '05 #1
2 1540
Thank you.

I supposed that is the expected behavior of GC.

I'm still wondering if I should be concerned about
110,000KB VM size resulted after I applied an xml
transform to 29,000Kb XML file and than to a 20,000KB XML
file.
The value is a bit lower after a while but remains still
high in a 100,000 range even after 24 hours.

Regards,
GD
-----Original Message-----
Memory is typically not reclaimed (this applies not just to XSLT) untilthere is sufficient pressure on GC or by manually invoking the GC. If theallocated memory was needed by something else, the GC would haveautomaticall y reclaimed this memory. Since there was no added pressure, theGC did not invoke (and therefore saved some perf).
--
This posting is provided "AS IS" with no warranties, and confers no rights.Use of included script samples are subject to the terms specified athttp://www.microsoft.com/info/cpyright.htm.
"gdumencu" <gd******@hotma il.com> wrote in message
news:03******* *************** ******@phx.gbl. ..
Hi,
When applied an XSL transform to a file bigger than 25 MB, I've noticed big values for Mem. and VM :about 70,000K.
VM size didn't decrease even after 24 hours.
Calling the GC, Mem. usage and VM decreased immediately to a reasonable size(<20,000K).

I'm wondering is there is a better way to manage XSL
transform of a big file.
Also I have no explanation why VM is still big if I'm not calling GC from my program.

Thanks,
GD.

=============== =============== ==============
I tried several options but the result is similar.
1.
XPathDocument doc = new XPathDocument(X MLfile);
...
xslt.Transform( doc,null, stream,null);

2.
xslt.Transform( XMLfile, Rezfile, resolver);

.

Nov 11 '05 #2
Depending on the complexity of your stylesheet and XSLT, the working set
size can grow to be quite substantial as you've seen. This is an issue we
try to continually address, and will continue to do so in future versions of
System.Xml

Thanks,
Arpan Desai

--
This posting is provided "AS IS" with no warranties, and confers no rights.
Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/copyright.htm.

"gdumencu" <gd******@hotma il.com> wrote in message
news:01******** *************** *****@phx.gbl.. .
Thank you.

I supposed that is the expected behavior of GC.

I'm still wondering if I should be concerned about
110,000KB VM size resulted after I applied an xml
transform to 29,000Kb XML file and than to a 20,000KB XML
file.
The value is a bit lower after a while but remains still
high in a 100,000 range even after 24 hours.

Regards,
GD
-----Original Message-----
Memory is typically not reclaimed (this applies not just

to XSLT) until
there is sufficient pressure on GC or by manually

invoking the GC. If the
allocated memory was needed by something else, the GC

would have
automaticall y reclaimed this memory. Since there was no

added pressure, the
GC did not invoke (and therefore saved some perf).
--
This posting is provided "AS IS" with no warranties, and

confers no rights.
Use of included script samples are subject to the terms

specified at
http://www.microsoft.com/info/cpyright.htm.
"gdumencu" <gd******@hotma il.com> wrote in message
news:03******* *************** ******@phx.gbl. ..
Hi,
When applied an XSL transform to a file bigger than 25 MB, I've noticed big values for Mem. and VM :about 70,000K.
VM size didn't decrease even after 24 hours.
Calling the GC, Mem. usage and VM decreased immediately to a reasonable size(<20,000K).

I'm wondering is there is a better way to manage XSL
transform of a big file.
Also I have no explanation why VM is still big if I'm not calling GC from my program.

Thanks,
GD.

=============== =============== ==============
I tried several options but the result is similar.
1.
XPathDocument doc = new XPathDocument(X MLfile);
...
xslt.Transform( doc,null, stream,null);

2.
xslt.Transform( XMLfile, Rezfile, resolver);

.

Nov 11 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
4666
by: Alex Vinokur | last post by:
Functor-parameters in the for_each() and transform() algorithms are passed by value. Might it make sense to have also algorithms for_each2() and transform2() which pass Functor-parameters by non-const reference? Here is some program which demonstrates probable necessity in such forms of for_each() and transform().
5
3596
by: KathyB | last post by:
If someone could just explain this to me...I just don't get it! I have an aspx page where I retrieve several session variables and use xmlDocument to transform xml file with xsl file into an instruction document (not data based) - same as using an xml web control. The resulting html is on the client? but what about the server side of things? Trying to figure out how to change and save the xmlDocument. It I put a button OUTSIDE of the...
6
2475
by: Stephen Cook | last post by:
Having worked through the problems around enabling the document function using an XmlUrlResolver I started work on building a useful class to hide the intricacies. Trying to generalise the process I've hit a snag. How do I resolve multiple external references? The transform method on a stylesheet only takes one resolver, not an array Stephen
6
1715
by: tcdevelopment | last post by:
I have a XSLT file that gives expected results when I transform using MSXML V4.0 in a simple vbs file. However when using XslTransform in dotnet, I do not get the same results. The part of the XSLT file that does not work correctly is: <Token TokenId="3129"> <xsl:for-each select="EDI/Segment/Element"> <Value Segment="PRF" Position="1"> <xsl:attribute name="SegmentIndex"> <xsl:value-of select="../@SegmentIndex"/></xsl:attribute>
2
2144
by: Greg Merideth | last post by:
I have an XSL file that I am using to transform some XML data using this method below. The problem is that if I use an embedded .XSL file in the .NET assembly, I get an error indicating that the URI is invalid, however if I open the file from the harddrive in the current directory, it works. Here's the method, notice that after s is loaded with the .xsl file from the resource stream that if you do a messagebox.show with s.readtoend you...
0
1263
by: Terry Brown | last post by:
I have an xml file: <?xml version="1.0" encoding="utf-8" ?> <G2Registers xmlns="http://tempuri.org/registers.xsd"> <register> <name>Version Register</name> <address>"00000000"</address> <verilogname>"PPC_Version"</verilogname> <bitfield>
3
302
by: Peter Row | last post by:
Hi, I have 2 XML files and 1 XSLT file. The second XML file has the following declarative 1st line: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> ....the 1st one (the one to be transformed) doesn't. In the transform file I load the 2nd XML file which contains
12
2896
by: das | last post by:
Hello all, I am using .NET XSLT to transform an XML into another XML file. All this is fine with small files, but when tested with big files (30MB) it is taking between 1hr-2hrs to just transform the file. Here is the code snippet: XPathDocument xdoc = new XPathDocument(fs); XPathNavigator nav = xdoc.CreateNavigator(); xslt.Transform(nav, null, strWriter, null);
3
7322
KevinADC
by: KevinADC | last post by:
If you are entirely unfamiliar with using Perl to sort data, read the "Sorting Data with Perl - Part One and Two" articles before reading this article. Beginning Perl coders may find this article uses unfamiliar terms and syntax. Intermediate and advanced Perl coders should find this article useful. The object of the article is to inform the reader, it is not about how to code Perl or how to write good Perl code, but to teach the Schwartzian...
0
7934
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
7870
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8236
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
8362
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
6639
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
5732
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5400
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
3891
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1465
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.