InfoQ

News

Second Life Now Running Mono Trials

Posted by Jonathan Allen on Feb 04, 2008 12:57 PM

Community
.NET
Topics
Performance & Scalability
Tags
Virtual Machines,
Mono

The popular virtual world Second Life is now publicly testing a Mono viewer. When in a Mono region, this viewer allows LSL scripts to be compiled against Mono. In theory, this will provide reduced lag and improved stability for Second Life users. According to Linden Labs, early results are promising:

We've run some benchmarks to compare the performance of the LSL2 virtual machine and the Mono VM. When we run the tests side by side we found that Mono is up to 220x faster than LSL2. These benchmarks were math intensive scripts usually used to evaluate performance. Once we get the beta program going we hope to get input from residents on Mono performance with more typical SL scripts.

Script performance is an essential consideration for Second Life. Unlike most online worlds, Second Life relies heavily on user-generated scripts. Even the simplest objects may have some scripting attached to them and a given server may be running hundreds of them simultaneously.

Since the LSL byte code isn't directly translatable into the IL byte code used by Mono, only scripts that still have the original LSL source code can be ported. Also, the Mono VM only accepts raw source so no "pre-compiled" .NET code can be inserted. Presumably this could change if Linden Labs follows their current plan of eventually opening it up to other .NET languages.

It was first announced that Linden Labs was considering Mono in August 2005.

No comments

Reply

Exclusive Content

Rationalizing the Presentation Tier

Thin client paradigm characterized by web applications is a kludge that needs to be repudiated. Old compromises are no longer needed and it's time to move the presentation tier to where it belongs.

Agile Project Management: Lessons Learned at Google

In this presentation filmed during QCon 2007, Jeff Sutherland, the creator of Scrum, talks about his visit at Google to do an analysis of Google's first implementation of Scrum.

AtomServer – The Power of Publishing for Data Distribution

In this article, Bryon Jacob and Chris Berry introduce AtomServer, their implementation of a full-fledged Atom Store based on Apache Abdera, which is now available as open source.

An Introduction to Virtualization

It is easy to think that virtualization applies only to servers. In reality the recent resurgence of the concept is also being applied to networking, storage, and application infrastructure.

REST Anti-Patterns

In this article, Stefan Tilkov explains some of the most common anti-patterns found in applications that claim to follow a "RESTful" design and suggests ways to avoid them.

Choosing between Routing and Orchestration in an ESB

In this article, Adrien Louis and Marc Dutoo discuss the differences and relative merits of using orchestration vs. routing in a typical ESB setup, and discuss various implementation options.

Enterprise Batch Processing with Spring

Wayne Lund discusses batch processing, Spring Batch objectives and features, scenarios for usage, Spring Batch architecture, scaling, example code, failures and retrying, and the future roadmap.

User Story Estimation Techniques

Developer Jay Fields draws on his experiences as a ThoughtWorks consultant to describe effective user story estimation techniques.