FastXML Performance

Intel Pentium Celeron 700 MHz, Microsoft Windows 2000 Professional


These performance tests are based on Inside MSXML Performance article.

Loading of XML document

UTF-8 encoding

  MSXML FastXML FastXML : MSXML
Sample  Load time (ms)   MB/s   Load time (ms)   MB/s  %
Hamlet.xml 74.8 3.6 11.8 22.6 15.8 %
Ado.xml 408.7 2.4 71.3 13.5 17.5 %
Ot.xml 838.5 4.4 133.3 27.4 15.9 %
Northwind.xml 52.5 4.4 8.8 26.5 16.8 %
Mean values 3.7 22.5 16.5 % (1:6)

UTF-16 encoding

  MSXML FastXML FastXML : MSXML
Sample  Load time (ms)   MB/s   Load time (ms)   MB/s  %
HamletU.xml 73.8 7.2 13.9 39.3 18.9 %
AdoU.xml 410.2 4.7 80.1 24.0 19.5 %
OtU.xml 794.9 9.2 164.1 44.5 20.6 %
NorthwindU.xml 45.3 10.3 10.6 44.1 23.3 %
Mean values 7.8 37.7 20.6 % (1:5)

Working set of a loaded XML document

UTF-16 encoding only. The input encoding does not affect the working set size (it affect only the ratio of the working set size to the file size).

  File size MSXML FastXML FastXML : MSXML
Sample  KB   WS delta (MB)   Ratio   WS delta (MB)   Ratio  %
HamletU.xml 546 1140 2.09 600 1.10 52.6 %
AdoU.xml 1968 5064 2.57 2680 1.36 52.9 %
OtU.xml 7484 11204 1.50 5568 0.74 49.7 %
NorthwindU.xml 478 712 1.49 368 0.77 51.7 %
Mean values       51.6 % (1:2)

Walk Tree

These are the results of walking the complete XML tree via DOM (including all element, attributes and text nodes).

  First time walk Next walks
Sample  MSXML (ms)   FastXML (ms)   Ratio   MSXML (ms)   FastXML (ms)   Ratio 
Hamlet.xml 53.8 13.8 25.6 % 42.9 13.8 32.1 %
Ado.xml 187.6 65.1 34.7 % 187.1 65.2 34.8 %
Ot.xml 531.9 133.1 25.0 % 431.5 133.5 30.9 %
Northwind.xml 28.9 7.2 25.0 % 23.2 6.8 29.1 %
Mean values   29.6 % (1:4)   31.8 % (1:3)


Helena Kupková, fastxml@yahoo.com. This page was hit Counter times.