wnd's weblog

Browser wars

16 Jul 2007 21:02:50 software

Not all web browsers are created equal. Apart from different user interfaces, they may or may not share a common rendering engine. The engine matters. The engines differ in performance (as in rendering speed, or CPU resources), stadnard compliancy, features (e.g. CSS, JavaScript), and memory usage. This is short, subjective comparison of a few.

While developing Woclema I had to run web-browser remotely over SSH. My first choice, Iceweasel, a re-branded Firefox, is already running with my account on the remote host so it’s out of the question. Dillo and links(2) doesn’t support CSS so they’re out as well. Opera? Mostly fine, but all Qt-themes I’ve seen are either hideous or rely on heavy graphics – and as such, are network-intensive. Do I really have a choice?

Suddenly I remember by “old love”, a browser I never really used, but liked nevertheless. NetFront. It’s not a perfect solution, but does the job fairly well. It supports most of the stuff you’d expect a browser to support, but it’s not perfect. The UI of Netfront SDK for Linux is not something you’d like to use as your primary browser, and it renders pages such as Slashdot incorrectly. But still, it’s very useful for purposes like mine.

Being back from work and Olympic sized swimming pool near my apartment, I did a quick run of Iceweasel, Opera, NetFront and Dillo to make a useless comparison. All contestants but Dillo are 32-bit. (Dillo depends on libglib1.2, which is missing from my chrooted 32-bit Debian unstable as of 17 July 2007.) Browsers are started from command line either with the address as parameter or as home page, window maximised to full screen, and page reloaded if necessary.

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
wnd      12021  3.6  1.3 126852 27004 pts/5    Sl   00:22   0:02 (iceweasel)
wnd      12077  3.3  1.5  54852 32228 pts/5    S    00:23   0:01 (opera 9.20)
wnd      12100  0.2  0.3  72504  6988 pts/5    S    00:23   0:00 (dillo)
wnd      12107  7.2  0.5  20736 11784 pts/1    S+   00:23   0:01 (netfront)

I know the results are not exactly scientific or accurate, but I think they give something to think of. To get better understanding of their memory usage, I should also be running xrestop or such… I’m not even going to try to measure the rendering speed, but using my first impression as sophisticated scientific tool, I’d give the contestants the following grades (10 being the fastest):

  1. Dillo, 9 points
  2. NetFront, 8 points
  3. Opera, 5 points
  4. Iceweasel, 4 points