central reference Nanite Systems Information Service
Newest article: What's new in Companion 8.5?
In development since 2017, Companion 8.5 is the single largest operating system release we've ever had. Like previous odd-numbered point releases, 8.3 and 8.1, this version focuses primarily on long-term architectural improvements meant to ensure that the system features remain scalable.

Module hibernation

The largest difference between 8.5 and earlier versions of Companion is the introduction of task management. A microkernel has been implemented, for the first time ever within LSL, which allows the system to reduce the resource usage of infrequently-accessed ("library") scripts by fully suspending their execution by the region host. This reduces script time to zero for hibernating library scripts, and can even eliminate the memory footprint of some libraries if they have not been accessed since the unit last changed regions. Critically, sleeping scripts do not need to be considered during system message-passing, which is a major source of script time usage and grows geometrically as the number of scripts in the system increases.

In 8.5, only a small number of scripts fully take advantage of this library architecture. We will be improving this further in 8.6, when the transceiver module is introduced to centralize the major remaining source of event-driven responsiveness, chat listeners. This means adding more scripts to the total script count, but on the whole, a great deal of functionality can be implemented without a commensurate increase in continuous resource usage. To achieve similar performance, other vendors have been forced to rely on fragile external servers to host solutions, not all of which may be around for the rest of Second Life's already considerable history.

Module hibernation is not a perfectly smooth innovation. Scripts do require some time to awaken when called upon, which can be especially notable immediately after a teleport. These scripts cannot preserve their memory, a problem we have solved through the implementation of the configuration system.


Last updated article: ATOS and Companion: What's the difference?

How to contribute to this wiki: register and then contact NSIS to request clearance. Click here to see recent changes to all NSIS wikis.