[Mono-list] mono performance, 20x differential with Java (what am i doing wrong)

Rodrigo Kumpera kumpera at gmail.com
Fri Jan 29 11:41:04 EST 2010

The mono JIT by default doesn't perform arrays bounds check elimination as
it's a pretty expensive computation.

You can try running it with --O=abcrem with enables it.

To look at the generated code of a given method use the MONO_VERBOSE_METHOD
enviroment variable. Set it to the name of the method you want.

On Fri, Jan 29, 2010 at 12:00 AM, Jonathan Shore
<jonathan.shore at gmail.com>wrote:

> Hi,
> I'm quite familiar with both the .NET and Java development environments,
> but only recently have begun to experiment with mono, so forgive me if I'm
> not clued-in.
> I specialize in numerical work that often involves a lot large-scale array
> manipulation for linear algebra, timeseries, etc.    My main production
> platforms are OSX and Linux.   I've been doing most of my work on the JVM
> over the past few years, though spent a couple of years with .NET when it
> was pre-release / pre-1.0.
> My main interest is in Ocaml, particularly the F# variant as the basis for
> my numerical work.
> One of the first things I do when considering a platform is run benchmarks,
> as performance is critical for what I do.    Starting with C# I wrote a test
> to gauge the array-access overhead associated with the platform.  Without
> knowing how to tweak the mono runtime to turn on any particular
> optimisations, the results were quite poor for this specific test (see code
> at the end of this posting).
> The test on my MacPro 2.6 Ghz / Snow Leopard with mono 2.6.1 gave the
> result of:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-list/attachments/20100129/a9566227/attachment-0001.html 

More information about the Mono-list mailing list