The Down and Dirty Truth on Lag and How You Can Improve Your Viewer’s Performance.

Been awhile since we covered this on the ZI Blog – So here goes for an UPDATE!

Much original credit to original posting:

The Second Life Wiki has a plethora of information for SL Residents — from answering frequently asked questions, to how to manage private regions, to improving viewer performance.

For those of you using the SL viewer, I thought I would share some good information that can be found in the Wiki regarding how to get the most out of your SL experience by a few tweaks of the viewer. The full article can be found by clicking here: How To Improve Viewer Performance.

Linden Lab suggests always maintaining your computer to run at it’s optimal performance. This can be achieved by following these simple steps:

• Routinely removing unwanted files and programs from the system.
• Defragmenting your disk drive regularly.
• Using anti-Malware software to remove spyware, virues, and other malware.

Follow the recommendations here to improve overall performance of Second Life and to address many common lag problems.

Another Important Maintenance Tip: CLEAN THE DUST FROM YOUR PC TOWER OR LAPTOP REGULARLY!

THE BASICS
• Make sure your computer meets the minimum system requirements. (Click here: SL’s Minimum System Requirements). It’s best to exceed them to prevent bottlenecks, since they are the bare minimum required to run Second Life. A slower processor, older video card, or low memory can contribute to slow framerates.

• Make sure you have working drivers for your video card. Search the SL Forum for posts on your video card. The latest driver is not always the best.

• Make sure your firewalls are properly set up. Click on the following link for firewall information: Using Second Life with a firewall.

• Check to see if your hard drive light is showing a lot of activity. If it is, your system may be running low on memory and using hard drive swap space instead, which is significantly slower.

Based on statistics collected by Linden Lab:
• Make sure you are the latest Windows Release – do regular updates!

• If you are using Mac OSX, upgrade to 10.9 or better, always use the latest releases.

• Use a 64-bit version of Windows if you can.

Second Life Third Party Viewer Directory – we recommend Firestorm.

Important: Second Life allows but does not support wireless connections. Always use a hardwired connection if possible.

OPTIMIZE YOUR DISPLAY PREFERENCES
Optimize your preferences to help Second Life run more efficiently. Try the following:
• Choose Me > Preferences
• Click on the Graphics tab.
• Move the Quality and speed slider to Low.
• Click the Advanced button
• Move the settings on the Mesh detail sliders to “Mid” or “Low.”

In general to improve performance set the Draw Distance to 128m. Depending on the region you are in the SL environment may be overloading the render process. This is the number one cause of poor performance on high-end gaming rigs in SL.

Set the Avatar Complexity Information to 350k or lower. This setting will render 90+% of all SL avatars and engage the video crasher protection. Avatars over the maximum avatar complexity will appear in various colors “Jelly dolls” resembling giant gummy avatars, (NO this is not a joke)

Set your Max Bandwidth to 80% of your download speed or 1500, whichever is less. The tells the server how much ‘update’ data to throw at you. This controls ONLY the UDP protocol, which has no error correction. Lost packers are lost damaging performance.

Set avatar impostors at 12 or 14. This setting stops the viewer from fully rendering avatars further away from your avatar. It reduces the render load with little if any visible change in your scene.

If you are on a laptop, make sure your system is using the video chip. The chip pulls power and a laptop in power saving mode will turn off the chip and render everything by CPU.

Check the Speed for your CPU – SL Viewer performance is very sensitive to processor speed. Core speed is more important than the number of cores. CPU and memory speed can kill viewer performance.

Autoplaying your music and media can be very demanding on some PC equipment. Use manual play instead:
• Choose Me > Preferences > Sound & Media
• Deselect Allow Media to auto-play.

Review the rest of your preference settings disable any unused features:
• Choose Me > Preferences or press Ctrl-P).
• Try disabling settings such as Play typing animation, Name tags, and Arrow keys always move me.
• Even minor items can add up to significant improvements in performance.

The skin on your viewer can also cause lag – pink or red skins will be more visually demanding – always choose a simple skin.

For more information, click here: Setting your preferences.

DON’T DISPLAY EXTRANEOUS THINGS
Make sure your Viewer is not displaying unnecessary information that may reduce performance:
• Choose World > Show> Advanced Menu.
• Choose Advanced > Highlighting and Visibility.
• Select Hide Particles.

Also to improve performance by gettngn rid of visual noise:
• Choose World > Show
• Disable Property Lines and Land Owners.

 

TROUBLESHOOTING TIPS
If you followed the advice above and are still experiencing performance problems, try the following.
• Exit and restart Second Life. This often is enough to fix the problem.
• Clear the cache. The cache is where the Second Life Viewer stores data on your hard drive for later retrieval.
To clear the cache:
1)  Choose Me > Preferences.
2) Click the Advanced tab.
3) Click Clear Cache.
4) After you’re prompted, restart the Viewer.

FIRESTORM VIEWER EXPERTS RECOMMEND THAT USERS DO NOT CLEAR CACHE EXCEPT IN SPECIFIC SITUATIONS

Check the Lag Meter:
• Choose Advanced > Performance Tools > Lag Meter. The lag meter breaks lag down into Client, Network, and Server lag, with corresponding indicators for each lag type.
• Click >> to reveal descriptions and advice for solving any lag problems you are having.
• Try teleporting to a quieter area or one with fewer objects, to see if the situation improves.
• Disable antialising.

Check your Ping Sim and Packet Loss values:
• Choose Advanced > Performance Tools > Statistics Bar to open the STATISTICS window.
The ping values are the time (in milliseconds) it takes to reach the server from your computer. If this number is high, it could indicate a problem with your network or internet connection. If Packet Loss is a nonzero number, your network or ISP may be having issues. See Using the statistics bar for more information.

• Check to see if there is anything blocking your computer’s ventilation ports, and make sure all the fans are working properly. Laptops in particular can get quite hot when placed on a flat surface, so you may want to try propping yours on a stand to increase airflow, or consider buying a cooling device like a “chill mat or a laptop cooling mat”.

• Finally, if you’ve overclocked or made other modifications to your computer, disable them until you can attain stability. You can use tools like Prime95 to stress-test your computer independently of Second Life.

USING THE STATISTICS BAR

The statistics bar presents a detailed list of information about the performance of your computer and Second Life. While the sheer amount of information can be confusing, knowing what to look for can tell you a lot about what’s going on in Second Life. Below we will go over the most important aspects.

To view the Statistics Bar, choose Advanced > Performance Tools > Statistics Bar. Shortcut Keys: Control + Shift + 1

Basic (This is YOUR computer info not the simulator)

Displays basic information about your Second Life performance. Click on the word Basic to hide or display this panel.

FPS: The number of times per second your computer is redrawing(or refreshing) what’s on the screen. Higher numbers are better. A framerate between 15-30 frames per second (FPS) is about as smooth as broadcast television.

Bandwidth: How much data is being transferred between your computer and the Second Life world. This number varies wildly depending on what bandwidth settings you’ve used, where you are inworld, what’s going on, and whether you’re still loading some things (objects/textures/etc) that are in your field of view. If bandwidth is 0kbps, something may be wrong (you may be partially disconnected).

Packet Loss: The amount of data being lost as it travels between your computer and the server. Any nonzero packet loss is bad; packetloss above 10% is very bad. Packet loss might be caused by a dying server (in which case everyone in the region would be experiencing it), a bad connection between you and Second Life (possibly a bad router between your ISP and Second Life, or congestion at your ISP), or problems on your local network (wireless networking, or internet security or firewall software on your computer).

Ping Sim: How long it takes data to go from your computer to the region you’re currently in. This is largely dependent on your connection to the Internet. If Ping Sim is high but Ping User is not, the server might be having problems.

Simulator (This is the info for the simulator you are on!)

Displays statistics for the region (simulator) you’re currently in. Click on the word Simulator to hide or display this panel.

NOTE: an “agent” is either a user in a given region (a “main agent”) or a user in a neighboring region (a “child agent”). Any user who can see objects inside a simulator region increases the load on that simulator. The nominal values below are for simulators running on a single simulator per CPU. On other simulators (such as water simulators), these number will be different.

  • Time Dilation – The physics simulation rate relative to realtime. 1.0 means that the simulator is running at full speed; 0.5 means that physics are running at half-speed.
  • Sim FPS – The simulator frame rate. This should now always be the same as the physics frame rate — 45.0 when things are running well.
  • Physics FPS – The frame rate at which the physics engine is running. This should normally be at or near 45.0.
  • Agent Updates/Sec – The rate at which agents on this simulator are being updated. Normally 20 updates a second, this will decrease if the simulator has a large number of agents on it.
  • Main Agents – The number of agents (users) who are on this simulator.
  • Child Agents – The number of agents who are not on this simulator, but can see it.
  • Objects – The total number of primitives on the simulator. This value does not include primitives being worn as attachments.
  • Active Objects – The number of objects containing active scripts on the simulator. This value does not include scripts inside attachments, unless the attachment wearer is sitting on a scripted object.
  • Active Scripts – The number of running scripts that are currently on the simulator, including scripts attached to agents and objects.
  • Script Perf – Number of LSL opcodes being executed a second by the simulator. Note that this is the number of ACTUAL instructions executed in the last second, not the theoretical maximum opcodes/second. If your simulator is not running very many scripts, this number will be low even if performance is good.
  • Packets In – UDP packets being received by the simulator.
  • Packets Out – UDP packets being sent by the simulator.
  • Pending Downloads – Number of asset downloads to the simulator that are pending. If this is greater than 1, this means that you may see delays in viewing notecards or scripts, and rezzing objects.
  • Pending Uploads – Number of current uploads of asset data pending. If this number is non-zero, this means that there may be performance issues when attempting to teleport.
  • Total Unacked Bytes – The size of the reliable packet data sitting on the server waiting to be acknowledged. A large number may indicate a thin pipe or other possible problems between the viewer and the sim.

Time

The following are the different times listed in the Time section of the Statistics bar. Click Time to hide or display this panel.

  • Total Frame Time – The sum of all time values listed below it, this measures how much time it takes the simulator to run everything that the simulator is trying to do each frame.
    • < 22 ms – The simulator is healthy, everything is running as fast as it can, and more scripts can be added without reducing the performance of individual scripts.
    • approx. 22 ms – The simulator is healthy, but there are probably a lot of scripts and agents on the simulator, meaning that script execution is being slowed down in order to maintain the simulator frame rate.
    • > 22 ms – The simulator is experiencing severe load, either due to physics or a large number of agents, such that even by slowing down script execution it is impossible to compensate. The simulator frame rate has been reduced as a result.
  • Net Time – The amount of time spent responding to incoming network data.
  • Sim Time (Physics) – The amount of time that frame spent running physics simulations. In general, this should be less than 5 milliseconds.
  • Sim Time (Other) – The amount of time that frame spent running other simulations (agent movement, weather simulation, etc.)
  • Agent Time – The amount of time spent updating and transmitting object data to the agents.
  • Images Time – The amount of time spent updating and transmitting image data to the agents.
  • Script Time – The amount of time spent running scripts.

Please keep in mind that some of these tweaks may improve performance (i.e. reduce crashing, reduce lag, etc.) but they also may affect the visual look of Second Life. By lowering graphics settings, turning off antialiasing, etc. it will affect the quality. You will trade performance for sharp visual quality. Play with the settings until you can get a balance of performance and visual appeal.

FIRESTORM VIEWER USERS: I strongly recommend joining the in-world Firestorm Users Group. There, you can get instant online help from FS staff as well as users. Also they frequently hold in-world classes on the viewer. I highly recommend these classes. They are extremely helpful.