I've been playing around with this benchmark and have discovered that some of the reasons mono performs slower than MS is that (g)mcs doesn't optimize things like:
r += i++; very well. If you instead write the code as: r += i; i++; the performance of the arithmetic loops under mono matches that of the MS .Net vm. As far as the other tests... I dunno yet :) Jeff On Fri, 2007-04-13 at 09:46 +0200, Henk Tiggelaar wrote: > Below are the results of benchmarks under Mono 1.2.3.1 and > Microsoft.NET 2.0. Benchmark code used can be found at > http://www.tommti-systems.de/main-Dateien/reviews/languages/benchmarks.html > > Mono 1.2.3.1 results > ================ > Int arithmetic elapsed time: 8094 ms > Double arithmetic elapsed time: 12141 ms > long arithmetic elapsed time: 26406 ms > Trig elapsed time: 2749 ms > IO elapsed time: 3204 ms > Array elapsed time: 406 ms > Exception elapsed time: 3719 ms > HashMap elapsed time: 234 ms > HashMaps elapsed time: 5265 ms > HeapSort elapsed time: 609 ms > Vector elapsed time: 9953 ms > Matrix Multiply elapsed time: 71562 ms > Nested Loop elapsed time: 10359 ms > String Concat. (fixed) elapsed time: 578 ms > Total C# benchmark time: 155279 ms > > .NET 2.0 results > ================ > Int arithmetic elapsed time: 5812 ms > Double arithmetic elapsed time: 7249 ms > long arithmetic elapsed time: 16265 ms > Trig elapsed time: 2281 ms > IO elapsed time: 2499 ms > Array elapsed time: 203 ms > Exception elapsed time: 26687 ms > HashMap elapsed time: 124 ms > HashMaps elapsed time: 3999 ms > HeapSort elapsed time: 531 ms > Vector elapsed time: 9890 ms > Matrix Multiply elapsed time: 33687 ms > Nested Loop elapsed time: 22265 ms > String Concat. (fixed) elapsed time: 359 ms > Total C# benchmark time: 131851 ms > _______________________________________________ > Mono-list maillist - Mono-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-list _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list