Thursday, November 22, 2007

Memory test - Firefox 2.0.0.9 vs Firefox 3.0 b 1

Does Firefox 3.0 beta 1 do a better job of handling memory than earlier versions? In a test put Firefox 3.0 beta up against Firefox 2.0.0.9 in a series of tests.

Before I go any further, a few disclaimers and notes. First off, I’ve carried out this test on a single system running Windows Vista Home Premium on which Firefox had not been previously installed. The system has 2GB of RAM. Both Firefox 2.0.0.9 and Firefox 3.0 b 1 were installed fresh using a standard install. For each test I visited the same web pages and did my best to make the browsing the same on both versions.

OK, with that out of the way, on with the tests. I simulated three different browsing scenarios:

  • Loading a five pages into the browser
  • Loading a single page and leaving the browser for 10 minutes
  • Loading 12 pages into the browser and wait 5 minutes

Here are the results:

Firefox 2.0.0.9

  • The memory test - Firefox 2.0.0.9 vs Firefox 3.0 b 1Loading a five pages into the browser - 35,640KB (img)
  • Loading a single page and leaving the browser for 10 minutes - 47,852KB (img)
  • Loading 12 pages into the browser and wait 5 minutes - 103,180KB (img)

Firefox 3.0 b 1

  • Loading a five pages into the browser - 38,644KB (img)
  • Loading a single page and leaving the browser for 10 minutes - 63,764KB (img)
  • Loading 12 pages into the browser and wait 5 minutes - 62,312KB (img)

Check out the complete screenshot gallery.

Just to give us a baseline, I repeated the 12 page test using Internet Explorer 7 and found that the browser used 89,756KB (img), more than Firefox 3.0 beta 1 but substantially less than Firefox 2.0.0.9.

This is interesting. Initially it seemed that Firefox 3.0 beta 1 was consuming more memory than 2.0.0.9, but during the twelve page test I started seeing what I’ve been seeing before - spiraling memory consumption when the browser is under significant load. I’m certain that if the browser had been left open longer, memory usage would have continued to rise. I didn’t see much signs of Firefox 3.0 beta 1 doing this. Certainly based on this test and from using Firefox 3.0 beta 1 today, I do think that things have significantly improved.

Anyone else taken Firefox 3.0 beta 1 for a spin? Any thoughts, feelings or observations?

Sunday, November 4, 2007

Firefox 2.0 and various plugins on Debian Etch

Howto: Install Firefox 2.0 and various plugins on Debian Etch

I don't know if anyone is interested, but I found that Debian Etch comes with Firefox 1.5 rather that Firefox 2.0. There has been some talk about Firefox 2.0 rendering pages faster and generally working better than Firefox 1.5. It took me some time to figure out everything needed to get Firefox 2.0 and various plugins installed and running. Here's how I did it.

Bookmark this page

We are going to need some additional repositories other than the basic ones used by a fresh Debian Etch Install. Start your Root Terminal and give roots password. Gnome users click Applications - Accessories - "Root Terminal". You should now have a nice pretty white window that says Terminal at the top.

I found a very easy to use editor for novices, it has a complete menu of all available options. To install this editor type:

Code:
debian:/# apt-get install ee
now we are going to edit our sources.list

Code:
debian:/# ee /etc/apt/sources.list
The important parts are in bold:

Quote:
#
deb http://ftp.us.debian.org/debian/ etch main contrib non-free
deb-src http://ftp.us.debian.org/debian/ etch main contrib non-free

#
# Debian Multimedia Repositories
#

deb http://www.debian-multimedia.org etch main
Now update apt

Code:
debian:/# apt-get update
Now that our sources.list has the required repos lets start with Firefox 2.0.

Firefox 2.0 depends on libstdc++5

Code:
debian:/# apt-get install libstdc++5

Firefox 2.0 may be available from the debian unstable repo as Iceweasel. However, I elected to go with the official Firefox 2.0. I am in the US and speak English so I use the en-US version of Firefox. Other versions can be found at ftp://ftp.mozilla.org/pub/mozilla.or....0/linux-i686/ pick your locale and substitute into the following code:

Code:
debian:/# cd /tmp
debian:/# wget ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/2.0/linux-i686/en-US/firefox-2.0.tar.gz
Now we need to unpack the archive:

Code:
debian:/# cd /opt
debian:/# tar -zxvf /tmp/firefox-2.0.tar.gz
I have seen some warnings that some Firefox 1.5 plugins (namely totem) are supposed to mess with Firefox 2.0. I have not found this to be the case. I have found that some plugins in the Firefox 1.5 directory are simlinks that break if you just copy the files over to the 2.0 directory. Aside from that, dpkg will still install your plugins to the old 1.5 directory. So let's recycle all those plugins from the previous Firefox 1.5 install. We are going to create a symbolic link from the installed Firefox 1.5 plugins directory to our new Firefox 2.0 plugins directory.

Code:
debian:/# cd /opt/firefox
debian:/# rm -R plugins
debian:/# ln -s /usr/lib/firefox/plugins /opt/firefox
Now we need to tell debian where to find the new Firefox 2.0

Code:
debian:/# ln -sf /opt/firefox/firefox /usr/bin/firefox
debian:/# ln -sf /opt/firefox/firefox /usr/bin/mozilla-firefox
debian:/# ln -sf /opt/firefox/firefox /usr/bin/mozilla
That is all there is to installing Firefox 2.0. You should now be able to click on your Firefox panel icon and find that firefox 2.0 is up and running.

Now let's install some standard plugins.

Sun's Java

Type the following command to install Java from debians contrib repo. You will be asked to accept Sun's license agreement.
Code:
debian:/# apt-get install sun-java5-jre sun-java5-fonts sun-java5-plugin
According to Sun's website (https://jdk-distros.dev.java.net/debian.html) "...you may need to choose the Sun JRE as the default with:"

Code:
debian:/# update-java-alternatives --set java-1.5.0-sun
After the install is done, you will need to restart Firefox and test the plugin here -> http://java.com/en/download/installed.jsp

When I tested mine the plugin didn't work so I created a link from Sun's Java plugin to Firefox's plugin dir.

Code:
debian:/# ln -s /usr/lib/jvm/java-1.5.0-sun/jre/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/firefox/plugins/libjavaplugin_oji.so
Now restart Firefox and retest here -> http://java.com/en/download/installed.jsp

Adobe's Flash Player 9

Now lets install Flash player 9. This install has been made painless by a package thats available in either the contrib or non-free repos.

Code:
debian:/# apt-get install flashplugin-nonfree
Restart Firefox and test Flash here -> http://www.adobe.com/go/tn_15507 You should see a version number in the 9,0,21,78 range.

Adobe Acrobat Reader

There is an official Adobe Acrobat plugin for firefox in either the Debian contrib or non-free repos. You can install it using:

Code:
debian:/# apt-get install acroread acroread-escript acroread-plugins mozilla-acroread
Restart your browser and test the plugin here -> http://www.opa.ca.gov/help/pdf/testpage.pdf

Mplayer and mp3 stuff

If your like me, you get tired of going to sites and finding out that you can't view or listen to some video or music file because they used a format thats not open source. Debian-multimedia.org has fixed this for us. If you followed this howto exactly the repository is already setup. Simply do the following:

Code:
debian:/# apt-get install mplayer mplayer-skin-blue mozilla-mplayer w32codecs mplayer-doc
Restart Firefox and test the plugin with your favorite multimedia site. If you want to see every plugin you now have available to you then type
Code:
about:plugin
in the Firefox url bar.

Optional Firefox Configuration

I don't like having to manually select urls in the url bar to navigate to a different site. I also like having the tab bar up all the time. I don't like the bookmarks bar up all the time. And all those security warnings talking about entering and leaving encrypted pages really don't make any sense to me. Also, by default Firefox doesn't use http.pipelining. pipelining allows the browser to use more available bandwidth to download pages quicker. If you agree with all of the above then you can fix it by following all of the following instructions:

Bookmarks toolbar

Click View - Toolbars - "Bookmarks Toolbar"

Tab bar

Click Edit - Preferences - Tabs - "Always show the tab bar"

DOM Inspector

I don't know what it does, except slow down Firefox. But there is an addon running by default called DOM Inspector. The Description says that it "Inspects the structure and properties of a window and its contents." You can turn it off by clicking Tools - "Add-ons" under the heading "DOM Inspector" click Disable. Voila, Firefox is now a lot faster (at least on my old eMachine).

Urlbar, pipelining, security warnings

Now we are going to get into the actual Firefox Configuration. In the Firefox url bar type about:config

urlbar

In the Filter bar type urlbar. The second item listed should be browser.urlbar.clickSelectsAll. Under the Value column right click on false then click toggle. The value field should now say true.

pipelining

In the Filter bar type pipelining. The first line will say network.http.pipelining right click on false and click toggle. Now the third line will say network.http.proxy.pipelining right click on false and click toggle.

security warnings
In the Filter bar type security.ui. The only option is security.ui.enable. Right click on true and click toggle.

Restart Firefox for all the new settings to take effect. Now you are rid of all the annoying things that cause people to not use firefox. Hopefully you will get as much enjoyment from all the new features and plugins as I do. Enjoy using Firefox 2.0.