Difference between revisions of "User:Jaszon Maynard/Jaszons sandbox Performance"

From Second Life Wiki
Jump to navigation Jump to search
(editing)
Line 3: Line 3:
Second Life is very demanding on most computer systems.  Due to the unusually dynamic, user-modifiable, constantly changing nature of the Second Life world, you may never see it display as smoothly as you would in your typical 3D computer game.  However, it can be well-enjoyed nonetheless.   
Second Life is very demanding on most computer systems.  Due to the unusually dynamic, user-modifiable, constantly changing nature of the Second Life world, you may never see it display as smoothly as you would in your typical 3D computer game.  However, it can be well-enjoyed nonetheless.   


Performance in Second Life is primarily affected by your computer and the speed at which it is capable of drawing the world that is Second Life.  It can also be affected by other factors, such as the quality of your Internet connection, as well as problems occurring on the [http://en.wikipedia.org/wiki/Server_%28computing%29 server computers] that are running the Second Life world.  Performance can be improved by changing settings in Second Life, though in some cases you may not achieve satisfactory performance without hardware and software upgrades (new computer, or new [http://en.wikipedia.org/wiki/Central_processing_unit CPU], [http://en.wikipedia.org/wiki/RAM memory], [http://en.wikipedia.org/wiki/Graphics_card graphics card], newer [http://en.wikipedia.org/wiki/Device_driver drivers], etc).
Performance in Second Life is primarily affected by your computer and the speed at which it is capable of drawing the world that is Second Life.  It can also be affected by other factors, such as the quality of your Internet connection, as well as problems occurring on the server computers [http://en.wikipedia.org/wiki/Server_%28computing%29 <small>&#91;definition&#93;</small>] that are running the Second Life world.  Performance can be improved by changing settings in Second Life, though in some cases you may not achieve satisfactory performance without hardware and software upgrades (new computer, or new CPU [http://en.wikipedia.org/wiki/Central_processing_unit], memory [http://en.wikipedia.org/wiki/RAM], graphics card [http://en.wikipedia.org/wiki/Graphics_card], newer drivers [http://en.wikipedia.org/wiki/Device_driver], etc).


== Types of Performance Problems in Second Life ==
== Types of Performance Problems in Second Life ==
Line 9: Line 9:
=== Low Framerate (FPS) ===
=== Low Framerate (FPS) ===


The Second Life [[Main Viewer]] may be asking your computer to do more than it can handle, and if your computer hardware is not powerful enough, or not setup correctly, it cannot draw the Second Life world very quickly.  This will result in a low [http://en.wikipedia.org/wiki/Framerate framerate] (also called low FPS, frames-per-second) and your view of the world will be jerky and stuttering, more like a slideshow than a movie.
The Second Life [[Main Viewer]] may be asking your computer to do more than it can handle, and if your computer hardware is not powerful enough, or not setup correctly, it cannot draw the Second Life world very quickly.  This will result in a low framerate [http://en.wikipedia.org/wiki/Framerate <small>&#91;definition&#93;</small>] (also called low FPS, frames-per-second) and your view of the world will be jerky and stuttering, more like a slideshow than a movie.


Framerates tend to worsen when you are near a crowd of other [[avatars]] (though a future version of the Main Viewer based on [[Windlight]] technology will have an "avatar imposters" option to help with that problem), or in a region with a large number of objects.
Framerates tend to worsen when you are near a crowd of other [[avatars]] (though a future version of the Main Viewer based on [[Windlight]] technology will have an "avatar imposters" option to help with that problem), or in a region with a large number of objects.


While it would be terrific to get 20-30+ FPS in-world most of the time, many residents do not achieve that, yet can still enjoy Second Life quite well.  [[Linden Lab]] keeps track of average resident framerates [http://secondlifegrid.net/resources/service_metrics#viewer_fps here], and generally 1/2 of the residents have a framerate average of less than 15FPS.
While it would be terrific to get 20-30+ FPS in-world most of the time, many residents do not achieve that, yet can still enjoy Second Life quite well.  [[Linden Lab]] keeps track of average resident framerates [http://secondlifegrid.net/resources/service_metrics#viewer_fps] and generally 1/2 of the residents have a framerate average of less than 15FPS.


If you'd like to see what your framerate is, you can learn how to display it by reading about the [[Statistics Bar]].
If you'd like to see what your framerate is, you can learn how to display it by reading about the [[Statistics Bar]].
Line 19: Line 19:
=== Excessive Lag ===
=== Excessive Lag ===


If your Internet connection is not very good, or if the Second Life [[Main Viewer]] is overwhelming your connection with the amount of information it is trying to download, you may experience Internet-related [http://en.wikipedia.org/wiki/Lag lag].  What is happening is that information flowing between your computer and the Second Life [http://en.wikipedia.org/wiki/Server_%28computing%29 server computers] is making that trip too slowly, possibly with data getting dropped (lost) and needing re-transmissions.  This often results in events being delayed in Second Life.  For instance, you may try to make your [[avatar]] walk, but it may take a long time for it to respond to your attempt to make it walk.  Then, when you attempt to stop walking, your avatar continues walking longer than you wanted it to.  You may type some chat text but it doesn't appear on the screen right away.  Or someone may reply to a question of yours but you don't see the reply for a long time after they wrote it.
If your Internet connection is not very good, or if the Second Life [[Main Viewer]] is overwhelming your connection with the amount of information it is trying to download, you may experience Internet-related lag [http://en.wikipedia.org/wiki/Lag <small>&#91;definition&#93;</small>].  What is happening is that information flowing between your computer and the Second Life server computers [http://en.wikipedia.org/wiki/Server_%28computing%29 <small>&#91;definition&#93;</small>] is making that trip too slowly, possibly with data getting dropped (lost) and needing re-transmissions.  This often results in events being delayed in Second Life.  For instance, you may try to make your [[avatar]] walk, but it may take a long time for it to respond to your attempt to make it walk.  Then, when you attempt to stop walking, your avatar continues walking longer than you wanted it to.  You may type some chat text but it doesn't appear on the screen right away.  Or someone may reply to a question of yours but you don't see the reply for a long time after they wrote it.


== Short Guide to Improving Performance ==
== Short Guide to Improving Performance ==
Line 25: Line 25:
You do not have to complete all the steps in this quick guide to improving performance.  Simply go through it, step by step, and when you've had enough, or when your performance has improved enough, you can skip the rest of the guide, or come back to it another time.
You do not have to complete all the steps in this quick guide to improving performance.  Simply go through it, step by step, and when you've had enough, or when your performance has improved enough, you can skip the rest of the guide, or come back to it another time.


This short guide will '''not''' cover in-depth diagnostics, analyzing [http://en.wikipedia.org/wiki/Server_%28computing%29 server] performance, diagnosing your system's weaknesses (so you'd know if a simple [http://en.wikipedia.org/wiki/RAM memory] upgrade would help), or any steps that would require you to install additional hardware or software.  It should be applicable to all supported [http://en.wikipedia.org/wiki/Operating_system operating systems].
This short guide will '''not''' cover in-depth diagnostics, analyzing server performance, diagnosing your system's weaknesses (so you'd know if a simple memory upgrade would help), or any steps that would require you to install additional hardware or software.  It should be applicable to all supported operating systems [http://en.wikipedia.org/wiki/Operating_system <small>&#91;definition&#93;</small>].


=== Increasing Framerate ===
=== Increasing Framerate ===
Line 31: Line 31:
==== A) Reduce Graphics Quality ====
==== A) Reduce Graphics Quality ====


The Second Life world can look pretty attractive.  But that beauty comes at a price.  Your computer has to work hard to draw the world.  If you turn down your graphics quality settings to the minimum settings, your [http://en.wikipedia.org/wiki/Framerate framerate] should improve.  If you'd like to take a cool looking screenshot or [[Snapshot]], you can always turn your graphics settings all the way up temporarily, then set them back to your "normal" settings for everyday use.
The Second Life world can look pretty attractive.  But that beauty comes at a price.  Your computer has to work hard to draw the world.  If you turn down your graphics quality settings to the minimum settings, your framerate should improve.  If you'd like to take a cool looking screenshot or [[Snapshot]], you can always turn your graphics settings all the way up temporarily, then set them back to your "normal" settings for everyday use.


If you have a lot of time, you can turn your settings all the way down, then experiment with gradually increasing some of the settings to see if there are any that noticeably improve appearance without making your world become noticeably jerkier.  Depending upon your computer and [http://en.wikipedia.org/wiki/Graphics_card graphics card], there may be some graphical details you can get "for free".  That is, activating them causes no noticeable degradation in performance.
If you have a lot of time, you can turn your settings all the way down, then experiment with gradually increasing some of the settings to see if there are any that noticeably improve appearance without making your world become noticeably jerkier.  Depending upon your computer and graphics card, there may be some graphical details you can get "for free".  That is, activating them causes no noticeable degradation in performance.


To reduce your graphics settings you first need to bring up the Second Life [[Second_Life_Preferences|Preferences]] window.  To do so, look in the [[Main Viewer's menubar]] and in the [[Edit menu]] choose the option for Preferences.  Now you will adjust various settings in some of the [http://en.wikipedia.org/wiki/Tab_%28GUI%29 tabs] in the Preferences window.
To reduce your graphics settings you first need to bring up the Second Life [[Second_Life_Preferences|Preferences]] window.  To do so, look in the [[Main Viewer's menubar]] and in the [[Edit menu]] choose the option for Preferences.  Now you will adjust various settings in some of the tabs [http://en.wikipedia.org/wiki/Tab_%28GUI%29 <small>&#91;definition&#93;</small>] in the Preferences window.


===== A1) The Graphics Tab =====
===== A1) The Graphics Tab =====
Line 43: Line 43:
===== A2) The Graphics Detail Tab =====
===== A2) The Graphics Detail Tab =====


Some options on the [[Graphics Detail Tab]] may be disabled/[http://en.wikipedia.org/wiki/Greyed_out "greyed-out"].  If so, ignore them.
Some options on the [[Graphics Detail Tab]] may be disabled/"greyed-out" [http://en.wikipedia.org/wiki/Greyed_out <small>&#91;definition&#93;</small>].  If so, ignore them.


Uncheck all the "Shaders" options.  Note that on many systems, "Enable Bumpmapping and Shiny" can be activated with no performance penalty.
Uncheck all the "Shaders" options.  Note that on many systems, "Enable Bumpmapping and Shiny" can be activated with no performance penalty.
Line 49: Line 49:
Set "Avatar Rendering" to "Normal".  Set "Lighting Detail" to "Sun and moon only".
Set "Avatar Rendering" to "Normal".  Set "Lighting Detail" to "Sun and moon only".


Set "Terrain Detail" to "Low".  Note that the world looks significantly better with this set to "High" (better-looking [http://en.wikipedia.org/wiki/Texture_%28computer_graphics%29 textures] are used), and on many systems it can be set "High" with no performance penalty.
Set "Terrain Detail" to "Low".  Note that the world looks significantly better with this set to "High" (better-looking textures [http://en.wikipedia.org/wiki/Texture_%28computer_graphics%29] are used), and on many systems it can be set "High" with no performance penalty.


Set all the "Mesh Detail" sliders to their lowest settings.  This will make various things in-world look blockier and less round.
Set all the "Mesh Detail" sliders to their lowest settings.  This will make various things in-world look blockier and less round.
Line 73: Line 73:
=== Reducing Lag ===
=== Reducing Lag ===


One cause of [http://en.wikipedia.org/wiki/Lag lag] is [http://en.wikipedia.org/wiki/Packet_loss packet loss].  If you think you have been experiencing lag you should check for packet loss.  Then if you have packet loss, you can adjust your settings to prevent it.  To check for packet loss, see the [[Statistics Bar]] article to find out how to display [[Main_Viewer|Viewer]] statistics.
One cause of lag is packet loss [http://en.wikipedia.org/wiki/Packet_loss <small>&#91;definition&#93;</small>].  If you think you have been experiencing lag you should check for packet loss.  Then if you have packet loss, you can adjust your settings to prevent it.  To check for packet loss, see the [[Statistics Bar]] article to find out how to display [[Main_Viewer|Viewer]] statistics.


Once the statistics are displayed, go about your normal activities in-world.  Keep an eye out to see if your "Packet Loss" goes above 0%.  Especially take a look at the meter when your performance in-world is going poorly, or when your [[avatar]] seems hard to control.
Once the statistics are displayed, go about your normal activities in-world.  Keep an eye out to see if your "Packet Loss" goes above 0%.  Especially take a look at the meter when your performance in-world is going poorly, or when your [[avatar]] seems hard to control.
Line 83: Line 83:
Now you repeat the steps.  Go about your normal activities, if your packet loss is fine now, you're done.  If it's still often above 5%, go back and subtract another 50 from "Maximum Bandwidth" and test again.
Now you repeat the steps.  Go about your normal activities, if your packet loss is fine now, you're done.  If it's still often above 5%, go back and subtract another 50 from "Maximum Bandwidth" and test again.


If you are forced to use Second Life with a low [http://en.wikipedia.org/wiki/Bandwidth_%28computers%29 bandwidth] setting, that means your computer will only be able to download information from the Second Life world slowly.  The effect of this will be most noticeable when you [[teleport]] into a location.  Your computer needs to download information about the new location...who's there, what they look like, the shape of the land, the buildings and objects there, their colors, etc.  With low bandwidth, it will grab that info slowly, so it will take time for the world to materialize.  Gradually objects will appear, and they'll take on their proper colors, etc.  Low bandwidth may also make [[voice chat]] impractical, and, when you do use voice chat, it may slow down even further the download of information to your computer.
If you are forced to use Second Life with a low bandwidth [http://en.wikipedia.org/wiki/Bandwidth_%28computers%29 <small>&#91;definition&#93;</small>] setting, that means your computer will only be able to download information from the Second Life world slowly.  The effect of this will be most noticeable when you [[teleport]] into a location.  Your computer needs to download information about the new location...who's there, what they look like, the shape of the land, the buildings and objects there, their colors, etc.  With low bandwidth, it will grab that info slowly, so it will take time for the world to materialize.  Gradually objects will appear, and they'll take on their proper colors, etc.  Low bandwidth may also make [[voice chat]] impractical, and, when you do use voice chat, it may slow down even further the download of information to your computer.


== Full-Length Guide to Optimizing Performance ==
== Full-Length Guide to Optimizing Performance ==

Revision as of 13:59, 28 February 2008

I'm currently developing this article and will probably eventually publish it to the wiki

Second Life is very demanding on most computer systems. Due to the unusually dynamic, user-modifiable, constantly changing nature of the Second Life world, you may never see it display as smoothly as you would in your typical 3D computer game. However, it can be well-enjoyed nonetheless.

Performance in Second Life is primarily affected by your computer and the speed at which it is capable of drawing the world that is Second Life. It can also be affected by other factors, such as the quality of your Internet connection, as well as problems occurring on the server computers [definition] that are running the Second Life world. Performance can be improved by changing settings in Second Life, though in some cases you may not achieve satisfactory performance without hardware and software upgrades (new computer, or new CPU [1], memory [2], graphics card [3], newer drivers [4], etc).

Types of Performance Problems in Second Life

Low Framerate (FPS)

The Second Life Main Viewer may be asking your computer to do more than it can handle, and if your computer hardware is not powerful enough, or not setup correctly, it cannot draw the Second Life world very quickly. This will result in a low framerate [definition] (also called low FPS, frames-per-second) and your view of the world will be jerky and stuttering, more like a slideshow than a movie.

Framerates tend to worsen when you are near a crowd of other avatars (though a future version of the Main Viewer based on Windlight technology will have an "avatar imposters" option to help with that problem), or in a region with a large number of objects.

While it would be terrific to get 20-30+ FPS in-world most of the time, many residents do not achieve that, yet can still enjoy Second Life quite well. Linden Lab keeps track of average resident framerates [5] and generally 1/2 of the residents have a framerate average of less than 15FPS.

If you'd like to see what your framerate is, you can learn how to display it by reading about the Statistics Bar.

Excessive Lag

If your Internet connection is not very good, or if the Second Life Main Viewer is overwhelming your connection with the amount of information it is trying to download, you may experience Internet-related lag [definition]. What is happening is that information flowing between your computer and the Second Life server computers [definition] is making that trip too slowly, possibly with data getting dropped (lost) and needing re-transmissions. This often results in events being delayed in Second Life. For instance, you may try to make your avatar walk, but it may take a long time for it to respond to your attempt to make it walk. Then, when you attempt to stop walking, your avatar continues walking longer than you wanted it to. You may type some chat text but it doesn't appear on the screen right away. Or someone may reply to a question of yours but you don't see the reply for a long time after they wrote it.

Short Guide to Improving Performance

You do not have to complete all the steps in this quick guide to improving performance. Simply go through it, step by step, and when you've had enough, or when your performance has improved enough, you can skip the rest of the guide, or come back to it another time.

This short guide will not cover in-depth diagnostics, analyzing server performance, diagnosing your system's weaknesses (so you'd know if a simple memory upgrade would help), or any steps that would require you to install additional hardware or software. It should be applicable to all supported operating systems [definition].

Increasing Framerate

A) Reduce Graphics Quality

The Second Life world can look pretty attractive. But that beauty comes at a price. Your computer has to work hard to draw the world. If you turn down your graphics quality settings to the minimum settings, your framerate should improve. If you'd like to take a cool looking screenshot or Snapshot, you can always turn your graphics settings all the way up temporarily, then set them back to your "normal" settings for everyday use.

If you have a lot of time, you can turn your settings all the way down, then experiment with gradually increasing some of the settings to see if there are any that noticeably improve appearance without making your world become noticeably jerkier. Depending upon your computer and graphics card, there may be some graphical details you can get "for free". That is, activating them causes no noticeable degradation in performance.

To reduce your graphics settings you first need to bring up the Second Life Preferences window. To do so, look in the Main Viewer's menubar and in the Edit menu choose the option for Preferences. Now you will adjust various settings in some of the tabs [definition] in the Preferences window.

A1) The Graphics Tab

Click the Graphics Tab and find the field labelled "Draw Distance" and set it to the minimum value, 64. What this means is, at a higher value, like 128, items that are farther away (up to 128 meters) are drawn so you get to see them, but items even farther away are not drawn. When you reduce this to 64, more items are not drawn...all the things between 64 and 128 meters away that you could see before, you won't be able to see now. This should improve your framerate. The effect in-world will be, as you're walking down a street, if you look in the distance you will see...nothing. No people, buildings, trees, mountains, etc. Even if they're actually there. As you walk closer to them, they will appear to suddenly pop into existence. You can now either click "OK" in the Preferences window and see if this change has improved your performance enough, or you can continue making changes.

A2) The Graphics Detail Tab

Some options on the Graphics Detail Tab may be disabled/"greyed-out" [definition]. If so, ignore them.

Uncheck all the "Shaders" options. Note that on many systems, "Enable Bumpmapping and Shiny" can be activated with no performance penalty.

Set "Avatar Rendering" to "Normal". Set "Lighting Detail" to "Sun and moon only".

Set "Terrain Detail" to "Low". Note that the world looks significantly better with this set to "High" (better-looking textures [6] are used), and on many systems it can be set "High" with no performance penalty.

Set all the "Mesh Detail" sliders to their lowest settings. This will make various things in-world look blockier and less round.

You can now either click "OK" in the Preferences window and see if this change has improved your performance enough, or you can continue making changes.

A3) The Adv. Graphics Tab

On the Adv. Graphics Tab make sure "Anisotropic Filtering" is unchecked. Make sure "Enable VBO" is checked.

Many residents like to increase "Fog Distance Ratio" to it's maximum, 4. This won't hurt performance. Most residents think the world looks better without stuff being fogged-out. Try it yourself to see what look you like better. With a low number, colors are more heavily fogged for objects that are farther from you. With a high number (like 4), colors are changed less by distant fog.

Set the "Max. Particle Count" to 1000. Particles are used to make stuff like fire, smoke, and various special effects. Turning this down will make such things look not as good, but it can keep your framerate from dropping as much when you're around them.

Set the "Outfit Composite Limit" to 0. This means that as avatars are editing their appearance, you won't see the effects of their changes until they're all done.

You can now either click "OK" in the Preferences window and see if this change has improved your performance enough, or you can continue making changes.

B) Disable Voice Chat

If you have been using voice chat features much, be aware that receiving audio from other residents or speaking to them can require your computer to do extra work to process the audio data, which may cause your framerate to drop. To deactivate voice, bring up the Preferences window

Reducing Lag

One cause of lag is packet loss [definition]. If you think you have been experiencing lag you should check for packet loss. Then if you have packet loss, you can adjust your settings to prevent it. To check for packet loss, see the Statistics Bar article to find out how to display Viewer statistics.

Once the statistics are displayed, go about your normal activities in-world. Keep an eye out to see if your "Packet Loss" goes above 0%. Especially take a look at the meter when your performance in-world is going poorly, or when your avatar seems hard to control.

If your packet loss is generally 0%, and occasionally hits 1-5%, then you don't really need to change anything.

If your packet loss is often above 5%, then it might be a good idea to change some settings. Bring up the Preferences window and select the Network Tab. Look at the value in "Maximum Bandwidth". Subtract 50 and use that as the new value (so if it was 500, enter 450 now). Click OK.

Now you repeat the steps. Go about your normal activities, if your packet loss is fine now, you're done. If it's still often above 5%, go back and subtract another 50 from "Maximum Bandwidth" and test again.

If you are forced to use Second Life with a low bandwidth [definition] setting, that means your computer will only be able to download information from the Second Life world slowly. The effect of this will be most noticeable when you teleport into a location. Your computer needs to download information about the new location...who's there, what they look like, the shape of the land, the buildings and objects there, their colors, etc. With low bandwidth, it will grab that info slowly, so it will take time for the world to materialize. Gradually objects will appear, and they'll take on their proper colors, etc. Low bandwidth may also make voice chat impractical, and, when you do use voice chat, it may slow down even further the download of information to your computer.

Full-Length Guide to Optimizing Performance

Someone should write this. Read the guidelines for writing help articles. Perhaps this section should tell people to do the short version first, then just cover the deeper topics here?

This section will cover, among other things:

  • verifying that Second Life is properly configured in regards to your graphic card (i.e.--amount of RAM on card, etc)
  • testing to see which graphics options your card supports "for free"/minimal impact
  • usage of expanded Lag Meter
  • driver updates
  • telling Second Life you have less graphics card RAM to force lower res textures to reduce bandwidth, cpu, and card strain
  • diagnosing sim performance (Stats Bar)
  • analyzing your own hardware/internet weaknesses

Further Reading

Relevant articles from the secondlife.com/support Knowledge Base:

Additional topics at Wikipedia: