[Opensim-users] Slow LSL timers

Tedd Hansen tedd at konge.net
Mon Dec 6 22:09:08 UTC 2010


Yeah, not saying it can't be done faster - just providing an explanation of
the logic behind it.
All LSL-scripts in OpenSim are converted to C#-code and then compiled by the
Mono/.Net compiler, so the black magic works.

There once was a choice to dump these converted scripts to disk, but it may
have been removed.
A breakpoint at the right spot will certainly yield the desired result. :)

(If anyone is a bit sporty they'll extract the code and make a web interface
for converting LSL to C#)

Br,
 Tedd

-----Original Message-----
From: opensim-users-bounces at lists.berlios.de
[mailto:opensim-users-bounces at lists.berlios.de] On Behalf Of Jorge Lima
Sent: 6. desember 2010 17:42
To: opensim-users at lists.berlios.de
Subject: Re: [Opensim-users] Slow LSL timers

Well, the question here is, are we aiming for full LSL compatibility some
day?
It seems wise - given the vast amount of content produced for the SL
platform over the past 7-8 years, a future version of OpenSim would
have much to gain from being 100% compatible.

Now, going back to the issue of timers, in the pre-mono days they
certainly used to be a little slow, and you couldn't safely go below
0.2-0.3 seconds.
Mono is much faster though - and I'm sure filling up the queue with
timers is impossible, since a new timer is only scheduled after the
current one has finished processing.

If you schedule a (0.0001) timer or something, what should happen is
that you effectively have a timer scheduled to "as fast as the event
handler can be run", assuming you have some bounded and deterministic.
If you change the timer within the event handler, you are simply
changing the timer's rate of fire. If set to zero, you disable it.

I haven't done any thorough testing to validate these assertions, but
they seem to match what it says in the LSL wiki.

Actually, in spite of the global timer manager, it seems that my
previous data shows that by scheduling timers at 0.5 seconds or below
it always takes the same 59 seconds to run them.

The wiki states that C# scripting is "black magic" and there's only
one example of it on the internet, so for the time being I will see if
I can stick to LSL, and maybe later I'll try to figure it out :)
_______________________________________________
Opensim-users mailing list
Opensim-users at lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-users




More information about the Opensim-users mailing list