# REXML performance gap between XP and OS X

**URL:** <https://www.ruby-forum.com/t/rexml-performance-gap-between-xp-and-os-x/114041>\
**Category:** Ruby\
**Created:** [September 7, 2007, 9:23am UTC](https://www.ruby-forum.com/t/rexml-performance-gap-between-xp-and-os-x/114041 "2007-09-07T09:23:08Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vassilis\_R](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/848f3c/32.png) [@Vassilis\_R](https://www.ruby-forum.com/u/Vassilis_R)\
**Post date:** [September 7, 2007, 9:23am UTC](https://www.ruby-forum.com/t/rexml-performance-gap-between-xp-and-os-x/114041/1 "2007-09-07T09:23:08Z")

</div>

I usually don’t notice these things as the differences are usually  
irrelevant, but this one has triggered my curiosity:  
I get a significant diference in performance using REXML betweeen OS X  
and Windows XP. And with significant, I mean a factor of 4 with Windows  
beeing the slower.  
I expected XP to be slower, since I’m running a Parallels VM, but not  
that much.  
A bit of context: I have a 3.2 MB XML file and I am running several  
XPath expressions over it collecting elements.

Two of these expressions are //element\_name so that takes a bit of time.

Here are the results of a unit test on OS X  
[20070906 16:00:39] INFO: Product groups parsed in 4.142405 seconds  
[20070906 16:00:43] INFO: Activity groups parsed in 4.319004 seconds

and the same unit test on Windows XP  
[20070906 16:01:49] INFO: Product groups parsed in 15.142 seconds  
[20070906 16:02:07] INFO: Activity groups parsed in 18.497 seconds

Windows runs of my BootCamp partition in a Parallels VM with Coherence  
enabled and 850 MB of memory.  
Even considering the drop in performance the VM incurs I still think a  
factor of 4 is a bit much.  
Results have been consistent, meaning repeated runs give results in the  
same ballpark (depending on what I am doing at the time the unit test  
runs things run a bit faster sometimes).  
The windows-based unit tests exhibit a worsening of performance as the  
load on the CPU increases which is not linear to the worsening of the  
test’s performance on OS X:  
on a clean system with just the VM loaded, the difference is a factor of  
~3.5: ~2 seconds for the OS X test per parsing and ~7 seconds on XP but  
I can attribute that to the tuning of the VM which favors OS X  
operations.

Any thoughts? Can it be that the VM influences performance so much?  
If I get the time I’ll boot BootCamp and see what native XP does.  
Cheers,  
V.-
