February 14, 2012
So, the bad news is that NovaGrid has closed, which is where I was going to go to get Excelsior Station hosted. Which doesn't leave me much in the way of options. Locate another hosting company or try to setup here at home.
Or, go with OpenSim. Which is an option, especially with the news from Kitely lately. Kitely now has payment plans and they'll be adding Twitter and email registrations in the next few weeks and megaregions are on their To Do List. Although I've not checked out any of the Kitely worlds yet, they are shaping up as an option.
So, I decided to cover my bases and build an OpenSim version of Excelsior Station based on Kitely's current rates. With Nova, I would have been paying $50 a month to host my 1024x1024 region, so I used that as my base. Currently, $50/month on Kitely gets you 30 one region worlds. Now, there's no saying if that will be the rate for a single 30regionMega on Kitely, but its easier to remove regions from a build than it is to add. Well, that's my theory, anyway.
But then there were some comments posted about differences between AuroraSim and OpenSim, so this seems to be a good time to do a bit of informal testing using my own system here at home.
The first thing is to reduce the variables. One is the computer. My system is an Athlon single core processor running at 2.7Ghz with 3Gb RAM and an nVidia GeForce 9500GT graphics card. So, that will be the same across both versions of the Station.
They both use the FlotsamCache for asset caching. Both versions of Excelsior Station have a 256 link limit (physical and non-physical) and both allow megaprims up to 256m and physical prims up to 50m. Both have groups, media on a prim, NPC and mesh enabled. Both are setup as a StandAlone using 127.0.0.1:9000 as the localhost. Both use Sim-on-a-Stick for MySQL. I have Excelsior Station on Aurora configured for 250,000 prims (yes, a quarter of a million) and the Excelsior Station on OpenSim has been reconfigured for 15,625 prims on each region for the same total, 250,000. I'm assuming that OpenSim totals the prim allowance up like that.
The AuroraSim version is the 0.4.2 "weekly", however, the main AuroraSim site is being rebuilt. You can get a more current version from their GitHub location but that is the current development version and is less likely to be as stable. I am using the 0.4.2 version for the purpose of this testing.
The OpenSim version is DivaDistro that comes with Sim-on-a-Stick updated to diva-r16915-a.
I'm using Imprudence 1.4 beta 2 on Windows Vista with Service Pack 1. I'm manually clearing the cache with both runs. So, same viewer with empty caches on the same computer running the same OS. I have the graphics set to High using the Recommended Settings button and a draw distance of 1024m. Once inworld, I slowly turned full circle to make sure that all the textures within my view were fully rezzed. I then spent an extra 5 minutes doing nothing just to be sure everything had loaded.
That's just about as far as I can go to ensure that differences are related to which server'ware I'm using and not due to any other factor. Other differences will be the number of prims rezzed and the number of active scripts on each version of Excelsior Station. I've also gone through the OpenSim INI files to get them to match AuroraSim as closely as I possible can.
Some differences cannot be helped. OpenSim uses XEngine for scripting while AuroraSim uses AuroraDotNetEngine. They both use Meshmerizer but OpenSim uses the OpenDynamicsEngine for physics while AuroraSim uses AuroraOpenDynamicsEngine. I don't know the details of the differences.
Another big difference is regions. AuroraSim uses VarRegion, or variable sized region, to set the land area while OpenSim uses MegaRegion. The idea is to eliminate sim border lag and both work. The difference is that AuroraSim's VarRegion defines the dimensions of a single region while OpenSims MegaRegion "welds" multiple default regions together into one land area. In this case, Excelsior Station-Aurora is 1,024m x 1,024m, which is the equivalent area of 16 standard regions. I setup Excelsior Station-OpenSim as a 16regionMega so as to ensure that I had the same land area.
Another difference is that the builds are not the same. And little wonder since I've been working on Excelsior Station using AuroraSimt for about a year while I've been working on the OpenSim build for only a few days.
|Amount of time to load & start||10 minutes 10 seconds||3 minutes 4 seconds|
|Number of Prims||69,303||70,087|
|Number of Active Scripts||4,188||3,290|
|Spare Time (as measured on Statistics Bar)||0ms||40000000ms|
I'm not sure about the Spare Time results, but that's what I got from the Statistics. Both versions have similar number of prims and active scripts but a significant difference in load times and spare time inworld. Subjectively, I found that my movement was noticeably more herky-jerky and rubberbanding in OpenSim.
There are some other differences as well.
In OpenSim, set up the ground textures of each region before you join them into a megaregion. Applying ground textures after joining affects only your base region, the one set at the SW corner. As for terraforming, you still run into those sim boundaries. Getting the land to smoothly transition across is very difficult. On the other side of the coin, one of the biggest problems for AuroraSim is the lack of compatible viewers. Imprudence won't render the default water texture from beyond 640m on your sim. Astra does, but it has its own issues, like not saving user preferences. I've not yet found any other viewer that will log into AuroraSim, though I am looking. There's also a lack of hosting companies for Aurora, which is a big factor when you are setting up your world for public access.
All in all, the pluses and minuses of both balance each other out. Whichever simulator server'ware you use is up to you. Just take your time and do your own evaluations. Fort me, I'm going to go with whatever gets Excelsior Station open for visitors.
A Bit More Comparing
February 16, 2012
Ener asked a good question in the comments the other day, what about CPU and RAM Usage. Initially, I was wondering how to measure those and where I can get some open source free tools when it hit me like a slap in the forehead,
Windows has a Resource Monitor. So, off I went to run those tests. I ran both versions of Excelsior Station the same was as I did last time, with only one difference. I did not clear the cache this time. And in so doing, I found out that some of the lag that I experienced before was due to Imp building up a new cache.
The first thing I did was to record my CPU and RAM usage without either sim being run to get a base measurement. Without either version of the Station running, my CPU usage was between 0% and 2% with the RAM used holding steady at 1.11Gb, or 37%. When I ran AuroraSim and waiting about 5 minutes after everything rezzed, I had 100% CPU usage and it used 2.04Gb of RAM, or 68%. The OpenSim version, after rezzing and waiitng, also ran the CPU at 100% but the RAM usage was 2.58Gb, or 86%.
|CPU Usage||0 to 2%||100%||100%|
|Gb RAM Used||1.11||2.58||2.04|
|% RAM Used||37%||86%||68%|