Tuesday, March 9, 2010

Ubuntu Road Test

Every now and again at work, I am involved in helping end users (sales representatives) with their machines. Sometimes I am amazed at the beating those machines get, it is surprising they even boot after a year in the field.

No kidding, those machines go through a lot: They are often thrown into the car trunk, or maybe dropped accidentally. They have an assortment of beverages spilled on them and it is not that unusual that they miss a key or two. Of course, they almost never get a full battery charge, and many users like to keep them always on, just on stand by mode when not in use. This is necessary when (as is the case in my company) the corporate build is so bloated and slow that it may take several minutes to boot. Obviously, that's not something you can afford in front of a customer.

To give a bit of background here, these are HP tablet PCs running a corporate Windows XP SP2 build under Safeboot drive encryption.

Now, if you have ever tried to keep windows running for days or weeks without a proper reboot, you surely experienced the pain of its performance degradation. This is obviously more exaggerated on a work PC that has to undergo the beating I explained above. The result? Well, I have seen cases in which it would take 1 or 2 minutes MS Word to open. That translated into maybe 5 or more minutes in the case of Lotus Notes, and even worse for Siebel. This poor performance was all over the place, which eventually rendered the PC useless for day to day work. For the most part, a reboot was all it took to bring things to acceptable levels, but I always wondered how my Linux boxes would cope with such intense use.

Obviously leaving the hardware physical abuse aside, I decided I would keep one of my machines on for a month, going from suspend to standard use mode, and putting it under intense activity. In fact, I am typing these lines from the PC in question. In the two weeks that passed, here are some things I have been doing:

- Coding: Working on a Python application, using Geany, MySQL administrator and Query Browser, the Python command line interpreter, PyGTK libraries, etc.
- Internet browsing: Let's just say that the poor fox is really on fire.
- eMailing: Pretty standard sending and receiving, often including attachments.
- OpenOffice frenzy: Calc is by far the most used, but Writer and Math have both had their time.
- Transmission: I have downloaded several beta and alpha distros which I have tested on...
- Virtual Box: Creating and removing virtual machines for Ubuntu 10.04 alpha 3 and PCLinuxOS beta.
- Social networking: Though most of it I cover on Firefox (Google stuff), Pidgin and Tweetdeck are usually online.
- Multimedia: Both XMMS and Songbird are often rocking, and I have watched a couple movies. Obviously, browsing did include lots of Flash video watching.
- Games: Gbrainy, Iagno and Mahjongg took care of some rests between coding sessions.
- Installation/Uninstallation: A few applications I was interested in testing came and went in these two weeks.

After two weeks of this intense use, I am finding very pleasant, even surprising results. The machine behavior is very consistent, taking always the same time to resume from suspension. Performance is as good as usual, even better for some tasks. This is probably related to the way Linux handles memory.

Essentially, Linux allocates more memory the longer it is online. In my case, I can confirm that is the case, as my testing PC is now showing in excess of 700MB in use, when it usually boots to about 220-230MB. This does not mean that Linux is ineffectively using memory, or that it will eventually use it all, but that it "reserves" it for its own use. As such, file transfers to devices happen very quickly, quicker than they normally do. That's mainly because they are not being committed immediately. Instead, they are committed to memory, and the actual transfer to the device is deferred to a later time, which Linux manages on its own. (NOTE: This is one of the reasons why it is important to properly unmount removable drives before they are unplugged. If we don't do that, we risk losing information that may have not been committed to the device yet.)

So long story short, halfway through the test, Linux excels in consistency and performance, not showing any signs of slowing down. OpenOffice, Firefox, Songbird... you name it, they all behave as usual, sometimes a bit quicker than I am used to!

Let's see how the rest of the month goes, expect another update in about two weeks...

Thanks for reading!


  1. I don't suspend my desktop ever, but it has months of uptime without issues. Debian Side with KDE 4.3.4 at this time.

  2. Hey, thanks for your comments!

    Well, I like to optimise my energy consumption, so my machines are only up when I need them, but I wanted to push the envelope for this test.

    Knowing that UNIX was designed with very long periods of time, I am not surprised that it delivers the goods as you mention. It was the actual going going back and forth from suspend to standard mode that got me interested, specially because of the effects it caused on Windows machines.

    Thanks again for your comments!