[Mono-dev] Mono performance rocks!
pablosantosluac at terra.es
Thu Feb 1 02:42:30 EST 2007
I sent this email again from a wrong email account, hope is not arriving
Long has been written about Mono (or .NET) performance compared to
equivalent C/C++ programs.
To be honest I was even once totally fed up about it:
Anyway, testing loops doesn't seem to be a way to check *real* performance.
One of our main concerns at the beginning of the Plastic project was
actually performance: our goal was having a multiplatform version control
system (you aren't multiplatform... you're not cool :-P), written in C#!!
So, how fast could it be? I still remember our first "add" operation: a
whole Quake 3 src repository (about 30Mb, 1300 files if I remember
correctly) took *just*... 11 hours!! So our concerns were even higher
Well, last week we run again some performance tests checking our "update
speed" (how fast you can download a certain baseline to your computer from a
server) against other version control systems. We didn't make any
optimization since our official release (November), but our results were:
Client: Acer TravelMate 370 -> 1'5 GB RAM, 1'4GHz centrino's CPU
Server: Dell Server: a Xeon Processor with 4 GB RAM.
Network: 100Mbps regular LAN
Repository: Quake 3 source -> 30 Mb, 1376 files, 66 directories
Time to download the code -> Plastic running on Mono -> 11s
We also checked with a much less powerful server: 1'8Ghz Pentium IV with
-> Plastic -> 20s
-> Subversion -> 38s
We added a 40 Mb file to the rep
-> Plastic -> 24s
-> Subversion -> 52 s
BTW, we run the tests several times to confirm the results.
So, yes, you can beat C written apps on Mono! :-)
And yes, "update" is our faster operation, but we still have to improve add
and check in speed (running in groups).
More information about the Mono-devel-list