OSCC 2013 — Why You Should Care and How You Can Help

Load Test

As all of you probably already know, we are organizing the first OpenSimulator Community Conference on the first full weekend of September, 7-8. This event has been in the making since, roughly, March. But it took us a couple of years before that to actually convince ourselves that it was worth doing it. Here are all the reasons why I think this event a great thing, and why everyone who uses OpenSimulator should be involved in some way.

Reason #1: Dramatic Improvements to OpenSimulator Performance

When we started planning this in March and we faced the prospect of a 200 people event, we went “omg!” Although we had never even tried, we knew that we could not host a 200 people event with OpenSimulator as it was in March — period. The maximum number of people we had ever attempted was 52, and in that test, lag started lurking in at 20, and never went away;we hit 52 people, but no one could move and chat was laggy as hell; the simulator eventually crashed. That test was back in 2009, too, a long time ago. Apart from Intel and its Distributed Scene Graph work, which takes a drastically different  architectural approach, none of us has ever paid much attention to core simulator performance.  It was clear that if we were going to attempt a 200 people event, we would need to invest a lot of our time in making OpenSimulator perform not just as well as the Second Life simulators, but… better.

Well, 4 months and 926 commits later, we have now taken the performance of OpenSimulator to levels that it has never seen before. In recent load tests, we have had as many as 117 avatars distributed over a 4-sim corner, with one of the sims usually hosting close to 60 avatars. After initial arrival of avatars, which is still a heavy load, the CPU usage on those simulators stays well under 100%. There’s very little to no chat lag and people can walk around without freezing neither the sim nor their own viewers. (Although we ask people to sit, because that’s the scenario for the conference)

A sim with 10 people standing around and chatting, which is a typical scenario for these virtual environments, now uses as little as 15% CPU — you can practically hear it yawn!

Reason #2: Dramatic Improvements to the Stability of Existing Features

Just to name three: the Hypergrid, teleports in general and Groups.

The Conference Center grid is hosted in a special-purpose server that is completely independent from any existing grid; it’s its own grid. Account creation on that grid is limited, by design. Except for conference staff, it doesn’t make much sense to host user accounts and their corresponding inventory in the Conference Center grid, because this is just a one-time event. It makes more sense for participants to come from their own persistent home worlds. Indeed, in all of the load tests that we have been making, the vast majority of avatars come from other grids — 33 grids so far! Consequently, a few bugs and poor performance in the Hypergrid had to be fixed…

In chasing bugs, we realized that what we were doing with teleports was not exactly in accordance to what the viewer was expecting. So we completely rewrote the Teleport protocol. The new protocol conforms with what the Linden grid does, as far as we can tell. As a consequence, teleports are now more solid than they ever were.

As for Groups (V2), even though I added this to OpenSimulator back in February, it had never been tested at scale. In using groups in the Conference Center grid, it was clear that there were some major issues in there that had been inherited from the Flotsam groups implementation. One of the major ones was in Group chat, which was very laggy and.. well, wrong. Group chat is now fixed. In the last load test we had 100+ people chatting (abusing) over the Load Test group with no additional CPU usage, no duplicate messages and generally no noticeable bugs. We also plan to make heavy use of groups for access control and permissions. Our smaller tests indicate that this can now be safely done.

Reason #3: Increased Synergy with Viewer Developers

This has, perhaps, been the best surprise of the process: we have had an increasing synergy with some of the viewer developers, specifically Singularity. So much so that we are planning to release a version of Singularity that is branded for the conference event. Some of the Singularity developers have been part of the load tests, and they have been extremely responsive to information and change requests that make the whole system work better. For example, thanks to lkalif, I was able to make the edit beams work in OpenSim (have you ever noticed that in OpenSim the edit beams were gone?). Another example, because of the new way that the viewers handle the map tiles, the map was useless after an Hypergrid Teleport; thanks also to lkalif, this has now been fixed in Singularity!

I see a whole new world of possibilities now…

Reason #4: New Features in D2 Wifi

Q: how would sponsors bring their content to the Conference Center grid, especially those whose grids aren’t Hypergrid-enabled?
A: add a feature to Wifi that allows users to upload IARs.

Done. It will be part of the next release of Wifi.

Reason #5:  Community Building

The OpenSimulator core developers are a bunch of radically independent nerds that have shown more talent to code than to do community management. That’s an unalterable fact. Luckily for this conference, we’ve engaged with AvaCon, a non-profit whose sole purpose is to help foster communities in the Metaverse. It’s been great to see the volunteers and presentation proposals coming in, managed by them! Now that I see it, I can’t wait to hear what people have been doing with OpenSim!

Reason #6: The Program!

Finally, conferences can be fun to attend. The program is shaping up to be very interesting, starting with Grady Booch’s keynote and ending with the breakout sessions and 3rd party social events.  The panels are interesting, the presentations I’ve seen being proposed are also interesting. As the program goes, the conference looks like a serious real world conference, as far as I can tell. (The final  program will be announced soon!)

I don’t think I ever attended a virtual conference like this before, so this is a first! If we are really able to pull this off in September, we might see more conferences going virtual instead of contributing to waste the ozone layer!

So here are some ways for you to get involved and help in this multi-purpose activity:

  • We are still in need of inworld volunteers. Consider volunteering to help during the conference. You’ll get an inworld ticket, and those are limited!
  • Don’t have much time to volunteer or cannot attend the conference? Consider being a sponsor, even if at the lowest level (US$50). While a virtual conference is 80x cheaper than a RL world one, it is not free of costs entirely. These sponsorships help defray the costs that we are incurring in.
  • Come participate in the load tests. We have one every Tuesday at noon PST. There is also a special load test this Saturday, where we hope to get close to 200 avatars — the real deal. Be part of a major milestone in the history of OpenSim/Second Life.