Improve FireFox Performance

Posted by Rob aka Cerberus
3650 Pageviews
Firefox is one of the (if not THE !) most popular browsers today, because its fast, secure and simple but significantly customisable by several add-ons available for free. But ...!
When released, it is configured to be used by the "average user", which means it?s not nearly set for power users. There are various ways to make Firefox quicker and perform better. Here?s a list of tips on how to make your Firefox run faster - lets start with the less important ones and the way through.

1. Drop the themes
Some users reported slower performance when using some graphically heavy themes. Personally, I never witnessed any drop in performance even with extremely "heavy" themes, but if you felt slowness while using a theme, that might be the case. Most themes I ever tried never resulted in any kind of performance loss.

All of the tweaks from here below are done in the Firefox advanced configuration menu. To see the many advanced configuration option type "about:config" (without double quotes) in the address location bar and press Enter.

2. nglayout.initialpaint.delay
This setting determines how many milliseconds Firefox will wait before it starts acting on information it receives, mainly display a website layout. This brief delay allows Firefox to load and arrange the various page components as correctly as possible. The default is 250 milliseconds, you can try setting this to a lower figure to see if it improves the responsive time of Firefox. However, it?s a controversial tweak and in many cases reducing this value resulted in longer load times.

3. Disable Google Prefetching (network.prefetch-next)
A feature introduced by Google - but used by other websites as well - is whats called the Google Prefetch. This is a Mozilla/Firefox browser feature only which tries to loadup what Google believes is the most likely page a user will want to view next. It does this in the background without informing the user. Beside clogging bandwidth, it may mistakenly indicate a user visited a website he never really did. We can all imagine the kind of trouble people can get into with this feature enabled at their workplace.
This feature causes a headache to webmasters as well, when their site is fetched by user?s browser while no one actually viewed the site.
To disable this feature in Firefox, go to about:config, find the network.prefetch-next setting and set it to false. This is recommended as it will improve security, but again the choice is up to you.

4. Browser cache memory browser.cache.memory.enable
This setting works in conjunction with the browser.cache.memory.capacity setting below. If set to true, Firefox will use the value specified in the browser.cache.memory.capacity setting. If set to false, Firefox will not use any RAM to cache, resulting in a huge performance drop.

5. Browser cache capacity browser.cache.memory.capacity
This setting determines how much RAM Firefox uses to cache itself, improving performance. A value of 0 turns off caching into RAM (not recommended), while a value of -1 tells Firefox to automatically determine the amount of RAM to use. You can manually specify the amount of RAM to be used (in bytes) to prevent Firefox from blowing out too much. A value of 32768 (32MB) for systems with 512MB of RAM or more. For those with less RAM, try a value of 16384 (16MB). If you have any problems, set this value to -1.

6. Maximum number of popup windows dom.popup_maximum
This setting determines the maximum number of simultaneous popup windows which Firefox can have at any given time. The default is 20, a lower number can get you out of a bind. This of course depends on your style of browsing.

7 . Number of DNS entries cached network.dnsCacheEntries
This setting determines how many entries Firefox holds in it?s DNS cache. By holding DNS entries in a local cache, Firefox can load it up without the need for a lookup, making it fetch the site faster. By default Firefox holds 20 entries in the cache. Increasing that number to the number of sites you regularly visit will improve performance.

8. Number of http connections network.http.max-connections
This setting determines how many simultaneous HTTP connections can be made by Firefox. The default is already 24, however for most power users this is not nearly enough, a value of 48 or upto 96 will allow more open connections, thereby speeding up browsing multiple pages. The maximum is 65535, but any number near or above 300 connections will probably slow down your entire system.

9. Number of http connections per server network.http.max-connections-per-server
This setting determines how many simultaneous connections can be made to a single server. The default is 8, but you can increase the value to in the area of 16 or 32 to attempt to increase browsing speed. The maximum is 255, but most servers will refuse so many connections and may flag you as an abusive connection.

10. Maximum number of persistent connections to a proxy network.http.max-persistent-connections-per-proxy
When connected to a proxy, this setting determines how many persistent connections are kept alive at any given time. The default is 4, you can set it to 8 to improve browser speed. Do not increase this figure too much it may add too much strain on your proxy server and hurt it?s general performance.

11. Maximum number of persistent connections to a server network.http.max-persistent-connections-per-server
This setting determines how many connections are kept to a single server at any given time. The default is 2, but you can increase it to 8. Raising this to a too high value will strain the website server you are connected to and will either result in a refused connection, or slower response times.

12. Network pipeline network.http.pipelining
If set to True, this setting uses the new HTTP Pipelining feature supported by most servers and proxies. This can improve browsing speeds, however because the feature is not supported by all servers you may experience problems. I recommend setting this to True and only disabling it if you experience such problems as refused connections or unusual behavior.

13. Maximum number of requests network.http.pipelining.maxrequests
This setting determines the maximum number of requests to send when using the HTTP Pipelining feature. Default is 4, and the maximum possible is 8. Setting it to 8 will increase performance but may cause very rare undocumented problems in which case you can reduce it back to 4 any time.

14. Network pipeline for proxy network.http.proxy.pipelining
This setting enables the HTTP Pipelining feature for proxy servers. Same as above, take note that not all proxies will support this feature.

Enjoy Your surfing!