Talk:Mono

From OpenSimulator

Jump to: navigation, search
  • It sure is nice that Opensim is on Miguel's radar now. He might even see it as a nice heavy load test for Mono, which would be good for the Opensim community. Morgaine 23:18, 14 June 2009 (UTC)
  • Miguel's preceding post in pastebin may be worth preserving as well, as it provides some insight into which memory size parameter is actually being measured and compared (namely RSS), and why:
I did some testing and downloaded opensim-0.6.4-release on both Windows and Linux.

I accessed a remote Windows system to do the build and run the simulator and I used my
local Linux machine with Hippo to test the memory usage. Sadly, Hippo kept crashing on me,
so I could not do a very extensive test.

A fresh virtual world with Mono/32-bit vs Vista/32 bit has Mono using 51 megs of RAM on
startup on Linux vs 55 megs of RAM on Vista (50 megs plus 5 megs of the OpenSim.vhost.exe)

If you run Mono/64 (which is what I initially did) the size of 64 bit pointeres has a strong
effect on Mono and increases the process size by 11 megs.

So at least starting up, Mono ends up with a 5 meg advantage. Perhaps the objects loaded
after that make a difference, but without the actual data that you used, it is hard to
find out exactly what it is.

I suspect though, that you might have compared the memory usage report from taskmanager on Windows
versus the VSIZE memory usage, this is a common mistake.

It is also worth pointing out that the VSIZE reported by ps aux is usually very large and is the
*wrong* metric to measure memory usage of OpenSim on Mono. The VSIZE reports the VM address space
used by Mono and it happens to include all sorts of things that are not actually using memory.

The RSS size is what you want to look at in both cases. There are a few hundred blogs that explain
why you should not use VSIZE when computing memory usage and why you should look at RSS, for instance:

http://virtualthreads.blogspot.com/2006/02/understanding-memory-usage-on-linux.html

[Miguel]
-----------
> First Post:
>
> Regarding the claims on Mono’s memory problems. I would like to know what exactly you claim
> that is larger in Mono than it is on .NET.
>
> I can understand a small percentage increase in memory consumption in Mono, but not a 3x or
> 4x increase in memory usage.
>
> Could you provide a sample “set” that I could use to test various versions of Mono across a
> number of operating systems and compare it to Windows?
> [Miguel de Icaza]
Pastebin links reported to SL::AW Groupies by ssm2017 Binder, pasted here by Morgaine 16:11, 15 June 2009 (UTC).
  • the .vshost.exe is not relevant in this scenario : The "opensim.vshost.exe" process is used by Visual Studio to allow enhanced debugging capabilities, i.e "edit and continue" and some other goodies (see MSDN documentation). opensim.vshost.exe is completely unusefull to OpenSim in "production mode" and to worry about its 5mb overhead is not relevant IMHO. I think it might be interresting to test using a "release mode" compiled OpenSim, disabling all debugging options and setting the same optimization flags on in both Mono and .NET if it applies. As a bonus, here is a link that explains Memory management on Windows which is more tricky than it seems.
  • I can not agree with these test results they are not statistically sound and the tests performed are not a good usage case of OpenSimulator, these results should be ignored until proper testing can be performed and presented in a more consistent manner. - Nebadon Izumi
Personal tools
General
About This Wiki