Maximize Firefox Without Extensions Using about:config If you type about:config in your address bar, Firefox opens the master directory of user-defined preferences and built-in settings. The ultimate arena for performance tampering, the about:config settings are the foundation for programming Firefox extensions.



We’ll show some simple about:config modifications below. Even if the word “Boolean” means nothing to you, we’ll try to make it easy to understand about:config settings. For power users, Mozillazine.org has a comprehensive list of about:config settings, their meanings, and how to modify them. Btw, although the screenshots below were made on a Mac, all of these hacks work for Windows users too.



To modify about:config, pull it up using your address bar. The settings appear in a searchable list view.







Type a string into the search bar for a live sort. To modify the setting, right click on it and choose Toggle for a boolean value or Modify for an integer or string.







Change the setting as desired, and simply restart Firefox to use the new configuration. (There’s no need to save.)



The first two tips below were adapted from a great tutorial by Gina Trapani at Lifehacker, and they’ll help you dip your toe into the about:config waters. We’ve chosen the easiest and most useful mods from her list. A very old guide (2004) to about:config modding at TweakFactor is still good in places; we’ve reviewed and modfied some tips below as well. 1. About:config - fetch only the content you view Firefox 2.0 and later likes to prepare itself for the next link you may click; to make clicked links load fast, it pre-loads content from pages which are linked to the page you’re currently viewing. Pre-fetching only occurs when the browser is idle, so it shouldn’t affect your bandwidth. Bear in mind that the makers of browser extension Fasterfox seem to think pre-fetching speeds things up. If you find this pointless and/or creepy, you can turn it off.



-In about:config, pull up network.prefetch-next.

-The default value is true. Right click and toggle it to false. Restart Firefox and enjoy. 2. About:config - limit memory usage On both Macs and PCs, our favorite browser can be quite the RAM hog. Tame the beast with browser.cache.memory.capacity. This preference must be added to your list; it won’t appear by default.

-First, check your memory usage with about:cache?device=memory in the URL bar. The window will display your current settings and the current cache contents. In the settings below, Firefox’s current maximum storage size is 1 percent of the RAM capacity of the computer.







-To change the amount of memory that Firefox can use, open about:config and right-click in the window New ? Integer.

-Enter browser.cache.memory.capacity as the preference name.

-Enter a value in KB. (There’s a handy calculator here.) Computerworld has a 2006 article about Firefox memory usage to guide you. 3. About:config - Hotrodded broadband with network preferences Mozillazine.org (which isn’t an official Mozilla publication, btw) lists preferences that can be used to “fine-tune performance.” Among these are the:

network.http.max-connections

network.http.max-connections-per-server

network.http.max-persistent-connections-per-proxy

network.http.max-persistent-connections-per-server



Most of the above preferences control the number of simultaneous connections your browser can make with an HTTP server. (HTTP protocol is the communication interface used for the vast majority of web surfing.) Some unscrupulous or uninformed commentators will tell you to jack up the number of possible connections as high as you can. However, this can lead to problems for both you (the web surfer/client) and the web pages you view (HTTP server).



“If you raise [the number], do it reasonably,” writes user lazlo in the Mozillazine forums. “Changes like these are at least partly responsible for the infamous /. effect [which crashes servers during high traffic.]” Some servers will even ban your IP address if you overclock your settings too severely, so be a good net citizen and don’t hog.



network.http.max-connections

-Controls the number of simultaneous possible connections using the HTTP protocol (used for most webpages). Default setting = 24



network.http.max-connections-per-server

-Controls the number of simultaneous HTTP connections possible with one server. Default setting = 8



If you’re using a gateway (a.k.a. proxy server), the preferences

network.http.max-persistent-connections-per-proxy

network.http.max-persistent-connections-per-server

controls the same settings as network.http.max-connections and network.http.max-connections-per-server. If you don’t know what a proxy server is, you’re probably not using one. 4. About:config - pipelining for faster page loads (maybe) Normally, your computer issues HTTP requests one at a time, waiting for a server response before sending the next request. Pipelining allows multiple requests from your computer to flow out without waiting for the server responses. Your computer (the client) handles the responses in the same order that the original request was received.



Depending on your web usage, pipelining can mean that you perceive a faster load time.

Imagine the difference between a constant conversation in which each side pauses and waits for the other’s response, and an exchange with one side making a long speech and then waiting for the other side’s long speech in response. It may seem faster to you or it may not.



Note that some pages may not be built to the HTTP 1.1 standard required for pipelining and may not be able to handle it. They may just refuse to load.



To try your luck with pipelining, open about:config and access

network.http.pipelining

-Default = false. Toggle it to true.



To bump up the max number of requests in a pipeline, access

network.http.pipelining.maxrequests

-Default = 4. Enter a value from 1 to 8. (1 will disable pipelining.)



(To turn on pipelining from behind a proxy server, access

network.http.proxy.pipelining

-Default = false. Toggle to true.



Incidentally, the W3C (the international standards organization for the World Wide Web) hasn’t updated its pipelining standards since 1997. For a more technical explanation of pipelining features, benefits and drawbacks, check out this FAQ by Mozilla developer Darin Fisher. 5. About:config - reduce page rendering time Typically, as a web page loads in a browser, the downloaded elements appear one by one (are “rendered”). The nglayout.initialpaint.delay preference designates the number of milliseconds before Firefox begins to render or “paint” the page. The default 250 ms settings compromises between dial-up users, who benefit from longer paint delays, and broadband users, who don’t. In a recent Mozilla developer discussion of the setting, user chob wrote:



“Setting [nglayout.initialpaint.delay] to 0 can mean as soon as the server sends the first byte, Firefox tries to parse this and start layout, but of course it takes time for enough HTML to come back for Firefox to render anything worth seeing.



“Setting a value to 0 probably just means Firefox chews a little more CPU time as it tried to render and reflow before having enough data to show anything meaningful. Although it probably gives the impression of being slightly more responsive because the page starts to render quarter of a second earlier.”



Create nglayout.initialpaint.delay in about:config as a new integer preference.







Default = 250. Broadband users can try a setting 0 – 100, while dial-up users can try 275 or higher. 6. About:config - mod Firefox responsiveness while rendering After nglayout.initialpaint.delay has been created and modified, Firefox may speed up rendering while annoying you with constant adjustments as you scroll through that new content. The preference content.switch.threshold controls Firefox’s responsiveness to your input (i.e. responsiveness to the UI) at the expense of slightly slowing the page load. Since you’ve already minimized the page load time with tips 2, 4, 5, and 6, that shouldn’t be too much of a sacrifice.



Firefox has two modes of user interaction with web pages that are still loading: high frequency interrupt mode and low frequency interrupt mode. The high mode better tolerates user interactions with the content. What content.switch.threshold ontent.switch.threshold controls is the number of microseconds of inactivity that will activate low frequency interrupt mode. In other words, it controls how long you have to do nothing before Firefox assumes you are waiting for the whole page to load.



To mod content.switch.threshold

-First, make sure that preferences content.notify.ontimer and content.interrupt.parsing are set to true (their default setting). (You can learn about these settings at Mozillazine’s Content.switch.threshold page.)

-Next, create content.switch.threshold as a new integer preference. Default = 750,000. The range is 1 to 1,000,000.



Just don’t forget that as Mozillazine.org says, “raising the value will make the application more responsive at the expense of page load time.”



This tip is based on a tip from TheHowToGeek. 7. Backup your preferences Now that you’ve tinkered to your heart’s delight, protect the ones you love – your user preferences – by backing them up. This info is adapted from the Mozilla guide to Firefox user profile backups.

-First, locate your Firefox user profile.







The string xxxxxxxx represents random characters assigned by the OS as the name of your profile. Don’t worry; there’s probably only one user profile in the folder anyway, so it shouldn’t be hard to find.



-After locating the profile file, close Firefox.

-Copy the file to the backup media.



Ta da!



Restoring from a profile backup is also easy (usually). Mozilla advises here. 8. Modify about:config speed settings in one step - Fasterfox extension All of that sounds like a lot of work and a lot of tinkering. Maybe another extension wouldn’t be so bad after all. Fasterfox tweaks many of the above settings and more. Now that you understand a few of the about:config settings, you can steal from the Fasterfox about:config mods to make more changes. Several possible about:config preference settings from Fasterfox, based on your connection and CPU speed, are listed here.



(Firefox 3 beta note: The official page for Fasterfox says it works with 2.0.0 and up, but some commenters have found workarounds to use Faserfox with Firefox 3 beta. Try it at your own risk.)

