Advanced Megaregions: Up to 5x Faster, and Working Parcel Media

We’ve updated the service today with improvements and bug fixes for megaregions. Kitely’s implementation of megaregions is significantly better than regular OpenSim, so we’ve decided to give it its own name: “Advanced Megaregions”. (See our previous post for more information about Kitely’s support for big worlds.)

Advanced Megaregions solve many of the problems that occur in regular OpenSim megaregions. One of these improvements is that parcel media works correctly throughout the megaregion, whereas in regular OpenSim it only works in the South-West region. Advanced Megaregions are also faster than regular megaregions, so the user experience is better.

Easily Enable or Disable Advanced Megaregion Mode

Some OpenSim features don’t work with megaregions, e.g. changing terrain textures. This is due to a limitation with the viewers. Kitely solves this problem by allowing you to temporarily disable Advanced Megaregion mode and modify each region separately. If you try to use a feature that doesn’t work in Advanced Megaregion mode then you’ll get this message:

Megaregion Warning

If you click on this link then your browser will automatically show the world’s Manage World dialog, where you can disable Advanced Megaregion mode by simply unchecking a checkbox:

Advanced Megaregion mode

This will change the world to normal (non-megaregion) mode, where you can modify each of the regions separately. When you’re done changing the terrain settings you can re-enable Advanced Megaregion mode by simply checking this checkbox.

When using regular OpenSim megaregions, you will encounter problems if you try to disable them: landmarks may stop working, objects won’t show up without additional manual work, etc. Kitely’s Advanced Megaregions don’t suffer from these problems: the world remains fully usable when not in megaregion mode. You can set landmarks in a world and they will continue working even if the Advanced Megaregion mode is changed. Similarly, objects will appear where they were placed no matter how many times you enable or disable Advanced Megaregion mode.

Speed Improvements

We have made numerous improvements to OpenSim to make big worlds work faster on Kitely. These changes reduce OpenSim’s CPU usage up to 80%! This makes the user experience smoother and allows for the use of more complex worlds and more avatars than regular OpenSim. The following chart shows how much we reduced CPU usage compared to regular OpenSim. These tests were done on a world running in its own server, with one avatar in the world.

World SizeWorld ModeCPU Load Reduction
4 RegionsAdvanced Megaregion45%
16 RegionsSeparate Regions64%
16 RegionsAdvanced Megaregion80%

Kitely uses powerful cloud-based servers to run OpenSim: they have multi-core CPUs, 7.5 GB of RAM, and high-speed I/O. Each server runs between 1 and 4 worlds. Worlds that have many avatars in them automatically get a larger portion of the server’s resources, so when your world needs it it will get its own dedicated server automatically.

  • Pingback: High-Performance Big Worlds, and World Pictures | Kitely Blog()

  •  This is fantastic! Do you plan to share this with the OpenSim developers or will this be a fork?

    • Hi Justin,

      Kitely has two major proprietary services which provide improved performance over standard OpenSim: our cloud-based asset service and our high-performance big worlds. These services cleanly integrate with standard OpenSim, which enables us to provide you with all the latest OpenSim features while adding capabilities that standard OpenSim doesn’t
      provide. This means we can continue using the standard OpenSim branch,
      without forking the code, and only add a few hooks to integrate our
      improvements whenever we upgrade to a new OpenSim version.

  • This is looking good and the last part of my wish list – Hypergrid 2 – may not be far off. However, I had dreams of at least a 10 X 10 mega region for sailing and role play so what are the chances of that?

    • Hi Gaga,

      Even with our improvements, adding additional regions to a megaregion will increase CPU usage. Going from our maximum supported world size of 16 regions to your desired 100 regions would entail a significant increase in server load, which isn’t compatible with our pricing model.

      We’ve improved megaregions (almost) as far as they can be improved without forking OpenSim or requiring changes to people’s viewers. However, once enough popular viewers support the required changes, we should be able to significantly reduce the CPU load that is created by running bigger megaregions. This will, in turn, enable us to provide even bigger worlds at an affordable price. 

      •  I would expect how much land is given over to water too should keep memory demand down. I think maybe a third of the sims for water and building should be around 40 to 50k prims

        • Hi Gaga,

          Even an empty region requires memory and, even with our Advanced Megaregions, stills consumes CPU resources. There isn’t much more we can do about that without requiring people to use viewers that are designed for handling regions that are bigger than 256×256 meters. If we did require such viewers then we could engineer Advanced Megaregions to eliminate most of the server overhead that is currently required for working with viewers that are not designed to work with megaregions.

          • John Oeffinger

            Is there a way to associate two or more Advanced Megaregions? They don’t need to necessarily be next to each other such we would not need to do something like sail from one to the next…but teleport between the two Advanced Megaregions.

          • Hi John,

            You can teleport between any two Kitely worlds for which you have access (public worlds or private ones you are authorized to visit).

            You can also script objects to automatically teleport people from one world to another world. See: http://opensimulator.org/wiki/OsTeleportAgent (please note that in Kitely only objects owned by a world’s manager can call osTeleportAgent in that world).

          • Carlos Loff

            That is a great idea but if you have them visible and usable side by side than that means they must be both running up so here comes the extra cost – If you don’t need them side by side than you can already go for it in Kitely and build whatever size you want just go and open 3 worlds of 4X4 each and use teleports between them

  • Kitely Support: How about getting 400 avatars on a Start-Up Quad-Sim as next Bottleneck?
    https://getsatisfaction.com/kitely/topics/how_about_getting_400_avatars_on_a_start_up_quad_sim_as_next_bottleneck

  • Keep up pushing the limits guys. Thanks 🙂

  • Pingback: Kitely: faster worlds, transfer stations and more | Living in the Modem World()

  • Pingback: talking about megaregions with Ilan at i live in science land()

  • Pingback: multi-region Sim-on-a-Stick now follows Kitely’s numbering at i live in science land()

  • Pingback: High-Performance Big Worlds, and World Pictures | Kitely Blog()