12 Ways To Make Second Life™ Run Faster On Your Low Performance Computer
Joel Foner 2009-12-06
* Added the “How To Make Your Viewer Run Even Faster (when you really need the most you can get!)” section
Joel Foner 2009-12-08
* Added “Stay Plugged In” (thanks to Ignatius Onomatopoea for this tip)
Joel Foner 2010-03-25
* Added “Remember to re-check all of these settings after any viewer updates, uninstall and reinstall or installation of an alternative viewer version!”
Joel Foner 2010-03-26
* Added Understanding the Maximum Bandwidth Option in the Second Life Viewer
* Added “If you’re Not Using Voice, Turn it Off!”
Second Life™ provides a 3D visualization of virtual environments, dynamically rendered so that you can make changes and any other avatar within sight sees those changes in almost real time. The technologies underpinning these capabilities are complex and place serious demands on the CPU and 3D graphics accelerator on your local computer.
The good news is that all of this is possible. The bad news is that there are a lot of moving parts and it uses a lot of computing and graphics horsepower to get the job done. The performance you see depends on many things. There are many factors that determine the performance you see, including the speed of your computer’s 3D graphics processor, the main processor (CPU), your hard disk speed, how much RAM (memory) your computer has, network stability, network speed, how many avatars are in view, how many avatars are on the region that your avatar is standing on, other load factors on the region, as well as specific characteristics of how the scene is built.
This article shows how to improve the operating speed of the viewer on low performance computer hardware. These steps will only cover optimization of your computer, and will not include addressing other potential sources of performance problems.
Please note that this article assumes you have some Second Life™ experience, and that you are comfortable with opening menus and making settings changes in the Preferences pages in the viewer.
But I Just Bought A Machine. How Could It Be Low Performance?
You may have bought a computer pretty recently, and assumed “this machine is pretty new, so of course its 3D graphics performance must be good”. You could be in for a surprise. In this age of cheaper, smaller, and providing lowest price options, manufacturers will often limit the 3D graphics capabilities of a machine to keep the price or size down. The traditional assumption of manufacturers has been that 3D graphics are only used by a tiny fraction of machine purchasers. That pattern is changing, but still many low price systems have pretty slow 3D graphics hardware in their designs.
Many computers have an option to install higher performance 3D graphics when you buy them. In some cases, and in particular with notebooks, this option is “manufacture-only” and cannot be added once you have bought the machine. If you’re choosing a machine for 3D graphics performance, make sure to get the best graphics card you can reasonably afford. It will make a noticeable difference, especially on computers with less than stellar main processor (CPU) speeds.
If you own a netbook-class computer, the likelihood is that the 3D graphics processor is pretty limited in performance. Some desktops, especially bargain models, will often have similarly limited performance graphics cards.
The Second Life System Requirements divide hardware options into minimum and recommended categories. If your computer’s graphics card is listed in the minimum column, your system may benefit from these adjustments. Even faster machines will sometimes do even better with these adjustments, but the benefits may be smaller.
Will These Changes Make Everything Faster On Every Machine?
In a word, no, these adjustments will not make everything faster! What these adjustments will do is to improve graphics smoothness and speed if there are no other more serious bottlenecks impacting performance. In most cases this will mean a noticeable improvement in graphics performance and smoother movement when walking around or with direct camera movement.
Basic System Maintenance
A few things that can dramatically slow down your experience nothing to do with the the Second Life™ viewer, so let’s start with these system-related steps. Please do these system maintenance steps in order:
1) Check Disk Space
The very first thing to check is the amount of free disk space on your computer. As the amount of free disk space goes below about 25%, you will find the performance start to slow down, and it will dramatically slow down when the disk is almost full. If your disk is mostly full or close to full, your first project is to figure out whether you can archive some files to “somewhere else”, perhaps compress some folders of files that you do not use very much, uninstall some unused applications, or in some other way find some more available space. The viewer will run even with the disk quite full, but you may find at times that it will repeatedly slow down as it tries to find cache files on the disk and find empty spots to write new ones.
2) Clear Viewer Cache
To clear the viewer cache:
- Start the viewer, but do not log in.
- Click the Edit menu and choose Preferences.
- Then click the Network tab at the left side of the Preferences menu.
- Press the Clear Cache button.
- Click OK.
- Select Quit from the File menu to exit from the viewer.
- Start the viewer again. While starting you should see a message about “clearing cache files”. This may take up to a few minutes depending on how many cache files there were and the speed of your computer.
- Once the viewer has started, select Quit from the File menu to exit the viewer again.
3) Defragment Your Hard Disk
If your operating system allows you to defragment your hard disk, do it! Windows has a built-in utility to do this, and while in general Apple says that defragmenting is not necessary, it still can help if you have a utility that will do defragmentation of the drive. In particular, with a disk drive that is 75% or more full, defragmentation can make a noticeable difference, since portions of files may be scattered in many places across the drive. With a disk drive that is almost empty, the improvement may be much less noticeable.
If you have not defragmented your hard disk in a while (or ever!) the process may take a long time, up to an hour or so depending on the machine. Be patient – it will finish eventually, and most applications will behave better afterwards. Defragmenting once in a while will help your applications to start up faster, and by doing it more regularly the time needed to defragment the hard disk will be much lower (often a few minutes.) You will get the best results if you clear the viewer cache before each time you defragment your hard disk.
4) Other Applications
The viewer takes a significant amount of RAM (memory) while it is running. If you have a machine that is marginal on performance, try quitting other applications while running the viewer.
An Important Note About Heat And Crashes
Check your notebook or netbook computer to see if it is lying flat on the table. If it is flat on the table, and there is no air space under the computer it may overheat. Running 3D graphics continuously for a long time draws more power and creates more heat than some notebooks were designed to handle when flat on a surface. Either find something to lift the rear edge of the notebook up by at least 1″, or consider purchasing a notebook stand to get the machine off of the table. Either of these steps will allow some cool air under the notebook and will very likely keep it from overheating.
If you find that your machine crashes or locks up about 15-20 minutes after starting a viewer session, and then crashes more often after the first crash, it is fairly likely that your machine is overheating. Try also blowing out any dust and “crud” by using a compressed air canister pointed into any open vents in the machine if lifting the machine off of the table does not help.
Viewer Performance Adjustments
All of the following adjustments are found on the Preferences panel. To open the Preferences panel either type Ctrl+P, or choose Preferences from the Edit menu. Red dots on the graphics below illustrate a setting that needs to be checked or changed for each step.
A Note About Netbooks: Many netbook computers have a display that is shorter than normal screen height, often 1024 x 600 pixels. On this size screen, the viewer user interface may be too tall to allow you to click some buttons. To accommodate these short screens, click the General tab (on the Preferences pane), and then set the “UI Size” slider to 0.9. This will make buttons and labels slightly smaller, and will allow all of the dialogs to fit in the window size of your display. This adjustment is not needed for most full-sized notebook and desktop computer displays.
1) A Surprise About Nametags
On some computers (not all, but often on lightweight hardware) the drawing of the nametag and group tag above the heads of avatars can reduce performance noticeably. This is only an issue in scenes with lots of avatars – typically 15 or more. If you are routinely around a small number of avatars this change is not needed. In cases where performance is more important than having names floating above avatars, click the General tab on the Preferences pane and set “Show Names” to “Never” instead of “Always”. In some cases this will help, and in others it will not, so this is left as a “try it and see what you think” option. Remember to set this back if you want to see avatar names!
2) Network Settings
- Click the Network tab on the Preference pane.
- If you have anything faster than a basic DSL connection, slide the “Maximum Bandwidth” slider all the way to the right, so that it says 1500 kbps. In some cases, even DSL connections will benefit from allowing the viewer to use more bandwidth. The default of 500 kbps ensures that the viewer will not completely monopolize a slower Internet link, but also prevents it from using all the speed available on a faster one. Understanding the Maximum Bandwidth Option in the Second Life Viewer provides a much deeper view into this setting.
- Regularly clear the viewer cache by clicking “Clear Cache” and then logout, exit the viewer and restart it. This is not needed all the time, but if you see performance start to suddenly decline, the first thing to try is to exit, clear your cache and log back in.
3) Graphics Settings
- Click the Graphics tab on the Preferences pane.
- Make sure that the Quality and Performance slider near the top of the Graphics page is set all the way to the left, above the label “Low” and next to the label “Faster.”
- Check the “Custom” checkbox to open up the detailed settings shown in the screen shot to the right.
- Set the Draw Distance to the far left, down to 64m. You will not “see” anything far away with this setting, but it will improve performance noticeably in dense scenes. If you want to see far away and don’t care about walking around performance at that moment, open this tab again, set the Draw Distance higher, and enjoy the view. Just remember to turn draw distance down to 64m for general higher speed walking.
- The Mesh Detail sliders control how accurately the viewer will draw various parts of a scene. On lightweight hardware I will often turn all of these sliders all the way down to the left. Spheres will not be completely spherical, and some sculpted prims may look a bit odd, but the performance gain from this set of changes is often quite noticeable. I have found on some (but not all) hardware that moving the Objects slider one click up from its lowest setting will improve the accuracy of shapes a good amount without a significant performance reduction.
- Make sure that Lighting Detail is set to “Sun and moon only.”
- Make sure that “Terrain Detail” is set to “Low.”
- Make sure that “Avatar Impostors” is turned on. This reduces accuracy of avatars far away to gain performance and is on by default. You probably will not need to change this setting.
- Click “Apply.”
NOTE: If you ever want to reset the entire page back to the default settings, click the “Recommended Settings” button. After you click “Recommended Settings” you will need to check the “Custom” checkbox again to get to the Draw Distance and other detailed settings.
4) Another Surprising Setting, This Time On The Communication Tab
You will need to be logged in to make this change, since Communication settings are not available when offline. Once online, open the Preferences pane and click the Communication tab. Uncheck the Show online Friend notifications, and then click “Apply.”
On slow hardware, and in particular in scenes that stress the machine, it seems that the Friend notification popup can be a noticeable performance drain. When the machine is on the edge, adding the drawing and animation of the popup can make typing more sluggish and create general slowdowns. Not all machines are affected in this way, but a few lightweight machines that I’ve worked with show noticeable improvement with this setting unchecked. Note that it only makes a difference when one of your friends logs in or logs out. If you have a shorter friends list, this may be a non-issue, as you won’t see many logins and logouts. If you have a long friends list, with people popping on and off regularly, this change may be more worthwhile.
Click OK, Exit and Log In Again And You’re Done With Settings Changes!
Click “OK” and exit the viewer, then log back in with your new settings, and you’re off to the races! Ok, well maybe you won’t have converted your lightweight graphics hardware into a blazing gamer’s speed machine, but it should perform noticeably better in many scenes.
Remember to clear your cache, logout and login if you see performance start to decrease noticeably, and also remember to check for other applications running while you are running the viewer. In particular having a mail program running regularly retrieving mail or a browser with many tabs open can impact viewer performance noticeably.
5) How To Make Your Viewer Run Even Faster (when you really need the most you can get!)
Slow 3D graphics systems are often sensitive to how many pixels they need to “paint” with every screen refresh, so this last performance tweak involves… painting fewer pixels! How do you do this? Set your viewer to be “Windowed” instead of “Full Screen”, and reduce the size of the window so that it is smaller than full screen – it’s that easy. I’ll often run the viewer at 2/3 or 3/4 of full screen size when extra speed is needed. If you run into a form that won’t fit at this window size, just click the “go to full size” window control button, and click the return to normal size button after dismissing the form. This trick works with most low powered computers, whether netbook, notebook or desktop, and is so simple it’s worth a try.
I can hear the complaints already “but I’m on a netbook, the screen is small already!” Yes, that is the tradeoff. I find that if I’m in a dense crowd and can deal with less viewable area, this tweak gives a noticeable speed improvement, and so I’ll often run this way when I’m in a meeting on a low performance computer. Once you’re proficient with camera controls, the need for a panoramic view is lessened.
You can decide from minute to minute whether speed or the size of the viewing area is more important. Changing this decision doesn’t even take changing a viewer setting. All it takes is resizing the window, as you would for any other application.
6) Stay Plugged In!
3D graphics processors use a lot of power when they are active, and running Second Life makes them go into always on mode as long as you have the viewer running. In order to extend battery life, many (perhaps most) notebooks will run the 3D graphics processor at a lower speed when you are running from the internal batteries. There will often be a noticeable (sometimes huge) performance boost from keeping your notebook powered from the wall A/C adapter.
In some situations I’ve noticed that plugging the A/C adapter in before starting the operating system is needed to trip the high performance graphics mode. You can also check the settings for “power management” on your computer to make sure it’s running in high speed mode.
You can, on some computers and operating systems, also find a power management setting that instructs the 3D graphics processor to run at higher speed even when running on batteries, however, do not expect the battery to last long when run this way! As an aside, even with the graphics processor running in energy conservation mode, you will find that the battery life is surprisingly short running Second Life (or any other high demand 3D graphics or gaming application.) It’s better to stay plugged in all around if you can, however in a pinch the viewer will work running just from batteries, albeit a little slower.
7) If You are Not Using Voice, Turn it Off!
On low performance computers such as netbooks, the voice system can require enough processing power that it noticeably affects frame rate (FPS), and will intermittently use a significant amount of CPU power. In the scenes I tested, I found that enabling voice caused the frame rate to drop much lower when walking or turning, presumably because the CPU was busy processing voice while trying to handle traffic to the graphics card at the same time. Disabling voice, in the primary scene I tested, caused the typical viewer frame rate to jump from around 6 FPS to well over 7.5 FPS. Yes, I know for those of you on desktops with hot graphics either of these are painfully awful FPS results, however with a low performance computer this difference is quite noticeable in terms of smoothness and overall usability.
Please note that on most desktop or faster computers, there is enough CPU power available that you will not see much impact from this setting. On netbooks it can be significant, so if you are not a voice user, or do not need voice on at the moment, you’ll enjoy faster rezzing and smoother movement if you go to Preferences > Voice Chat and uncheck the “Enable voice chat” checkbox. Just remember to turn it back on when you need voice, and you’ll be all set!
8) Remember to re-check ALL of these settings after any viewer update, uninstall, reinstall or alternative viewer installation!
Depending on how you do updates, uninstalls or reinstalls, these settings may or may not be preserved. Make sure to re-check these important performance settings after any viewer update, and especially if you uninstall or reinstall the viewer, or install an alternative viewer version.
(This one I keep re-learning, after thinking “this is running really slowly,” just to realize that, for instance, the graphics settings have been re-set back to their defaults by an uninstall and reinstall cycle!)
- Some of these optimizations reduce the smoothness and accuracy of how some shapes and objects are rendered to improve performance. It’s a trade-off, and you may decide to not be so severe in your settings changed. I have decided over time that I would much rather have smooth, fast performance (well, as smooth and fast as a lightweight machine can be) than highly accurate graphics.
- You may not want to make these tradeoffs on higher performance hardware, and in fact the performance limits on more sophisticated hardware may be in other areas. As they say “your mileage may vary”.
- These changes have been field tested in my netbook computer, which is an MSI U120 Wnd (I bought it – this is not a sponsored review – just a machine I have that represents lightweight hardware very well), and this machine is now quite useful for a lightweight carry-around machine for business meetings with voice in Second Life. I would not propose using this class of machine for rich graphics environments or trying to move smoothly in highly dense crowds of avatars. I find that for most common business uses it is workable with these changes. At the same time, I’m an experienced user, so I know how to use camera controls to get around when avatar movement is too slow, and am willing to be patient in complex, dense scenes. In sparser scenes, there is often no need for fancy tricks, and “it just works” albeit with a slow frame rate.
- These optimizations improve the average frame rate (FPS) by 30-40% in many scenes that I have tested compared to the default viewer settings. Your mileage may vary depending on the scene and number of avatars in your field of view.
Best of luck! Hopefully these tweaks will help your low performance hardware to be more usable in typical scenes.