SEARCH

How-To Geek

6 Ways to Speed Up Your Ubuntu PC

image

Ubuntu is pretty snappy out-of-the-box, but there are some ways to take better advantage of your system’s memory and speed up the boot process. Some of these tips can really speed things up, especially on older hardware.

In particular, selecting a lightweight desktop environment and lighter applications can give an older system a new lease on life. That old computer that struggles with Ubuntu’s Unity desktop can provide decent performance for years to come.

Install Preload

Preload is a daemon – a background service, in other words – that monitors the applications you use on your computer. It learns the libraries and binaries you use and loads them into memory ahead of time so the applications start faster. For example, if you always open LibreOffice and Firefox after starting your computer, preload will automatically load each application’s files into memory when your computer starts. When you log in and launch the applications, they’re start faster.

Preload isn’t installed by default on Ubuntu, although some distributions do include it by default. To install Preload, run the following command:

sudo apt-get install preload

image

That’s it! Preload runs in the background without bothering you. You can tweak Preload’s settings in the /etc/preload.conf file if you want, but the default settings should work fine.

Control Startup Applications

Applications can automatically start when you log into Ubuntu. Packages can automatically add their own autostart entries – for example, install Dropbox and you’ll likely have it automatically starting with your desktop. If you have quite a few of these entries – or a slower system – this can make your desktop take longer to appear. You can control these startup applications from the Startup Applications dialog.

image

Ubuntu hides most of the system’s default autostart entries from this dialog. To view them, run the following command in a terminal:

sudo sed -i ‘s/NoDisplay=true/NoDisplay=false/g’ /etc/xdg/autostart/*.desktop

This command modifies each autostart file and changes the “NoDisplay” parameter from “true” to “false,” making each entry appear in the list. After running this command, restart the Startup Applications dialog and you’ll see more options.

image

Don’t disable an autostart entry unless you understand what it does. For example, if your computer doesn’t have Bluetooth hardware, you can disable the Bluetooth Manager applet – but don’t disable Ubuntu One if you use it.

You should disable entries by unchecking their check boxes instead of clicking the Remove button. If you need to re-enable an entry later, you can re-enable its check box.

Use a Lighter Desktop Environment

If you’re using older hardware that struggles with Ubuntu’s default Unity desktop environment, you may want to use a lighter desktop environment. Good options include LXDE, XFCE – or even something like Xmonad, if you want a super-minimal environment. These options are just scratching the surface of the available lightweight desktop environments.

Use Lighter Applications

Along with a lighter desktop environment, more lightweight applications can increase the performance of an older, slower system. For example, if you’re typing up the occasional text document in LibreOffice Writer, why not try Abiword instead? It has less features, but it’s faster.

image

If you’re using Mozilla Thunderbird or GNOME Evolution for your email, you might try Sylpheed, a more lightweight graphical email program. You’ll find lightweight alternatives for most programs you use – just give it a Google. You can even ditch graphical applications entirely and do everything with terminal applications – you’ll find a lot of terminal-based alternatives, too.

Reduce Boot Menu Delay

If you have multiple operating systems installed, Ubuntu displays the GRUB boot loader menu for 10 seconds when you start your computer. After 10 seconds, it automatically starts your default boot entry. If you normally wait for Ubuntu to select the default boot entry, you can reduce this timeout and take precious seconds off your boot process.

To modify this setting, open the /etc/default/grub file in a text editor:

gksu gedit /etc/default/grub

Change the value of GRUB_TIMEOUT in the file to a lower number. If you set the timeout to something extremely low – say, 1 second – you can access the boot menu by continually pressing the arrow keys or Escape key while your computer boots.

image

Save the file and run the following command to apply your changes:

sudo update-grub2

image

You can also modify this setting – and many other GRUB2 settings — with Grub-Customizer.

Tune Swappiness

The last option is a controversial one. Even Linux kernel developers disagree with each other about the optimal value for the swappiness parameter.

The swappiness value controls the Linux kernel’s tendency to swap – that is, move information out of RAM and onto the swap file on the disk. It accepts a value between 0 and 100.

  • 0: The kernel will avoid swapping process out of physical memory and onto the swap partition for as long as possible.
  • 100: The kernel will aggressively swap processes out of physical memory and onto the swap partition as soon as possible.

Ubuntu’s default swappiness value is 60. If you find that Ubuntu is swapping processes out to disk when it shouldn’t be, you can try a lower value – say, 10.

image

To temporarily change the swappiness value to 10, use the following command:

sudo sysctl vm.swappiness=10

This change will be lost when your system restarts. If you want to preserve the value between boots, edit the /etc/sysctl.conf file:

gksu gedit /etc/sysctl.conf

Look for vm.swappiness in the file and change its value. If it doesn’t exist, add it to the end of the file on a new line, like so:

vm.swappiness=10

image

Save the file after making the change.


How do you speed up your Ubuntu system? Do you have a preferred swappiness value? Leave a comment and let us know.

Chris Hoffman is a technology writer and all-around computer geek. He's as at home using the Linux terminal as he is digging into the Windows registry. Connect with him on Google+.

  • Published 06/5/12

Comments (22)

  1. patxi

    install debian

  2. xana452

    Thanks! I’ve been wondering. I want to get the maximum speed out of my system, and I never knew about preload until now.

  3. Dan4th

    Awesome, I have an older system I’ve been wondering which distro to slap on it, Think I might just wait for the light weight version of Maya to be released.

  4. TheFu

    Very nice article.

    There is no need for a “desktop environment.” Gnome, KDE, even LXDE are bloated compared to running a pure WM, Window Manager, environment. Dumping all the **cheese** with 2D and 3D graphics helps lots too.

    If you’d like to see how fast your new PC (or even your old one) can be, try out TinyCore. You will be amazed. Using TinyCore in a VM just for some special use, perhaps a backup PC (in a house filled with virus infected commercial OSes) or for online banking is still a good idea. At less than 20MB, it is hard to go wrong if your expectations are for 1 or 2 apps only. If you can allocate 120MB HDD and 128MB of RAM for this distro, it will scream – even on a P4 CPU. On a Core i5 it is simply unbelievable.

    I’m not trying to hate on any GUI. Each has a place. If you have the hardware and want the cheese, enjoy. For myself, LXDE is the right amount of bloat and ease of use when a GUI is desired. Setting up a few menu items under straight Openbox or FVWM are just a little too much hassle, even for me and the little extra that LXDE needs seems a small price for an easy-to-use menu.

    I’m still looking for a server distro that is mostly full featured (non-GUI), but runs well in less than 512MB of RAM, on a Via C7 CPU and less than 500MB of HDD, but supports the newer GigE NICs, eSATA and USB3 devices. Even Debian wanted to install too much extra stuff and with Canonical dropping support for older CPUs, well, SOL is the term – even if I could squeeze it into 512MB of HDD. I must be missing something.

  5. Ray

    Been playing with Antix since it is lighter weight than ubuntu.

  6. cam2644

    Good article with useful info. I’ve filed it for future use because at present my Ubuntu is on a new machine and runs quite speedily.

  7. Dan

    While trying to see the startup applications, I entered the command suggested in the article but received the following message: sed: -e expression #1, char 1: unknown command: `�’.

    I copied it and pasted it into the terminal window. Maybe i SHOULD TYPE IT INSTEAD?

  8. Dan

    UPDATE: I typed the command for updating the startup display and it worked as specified in the article. Something didn’t transfer when I copied it and pasted it into the terminal window.
    ty/dan

  9. John

    Dan, I had the same problem but I figure it out. Just change both of these – ‘ – to ‘. Small difference but it works

  10. Ashwin Rao

    Nice article! Glad to know about Preload which will be much helpful in work PC as the RAM is low. Thank you very much How to Geek! We expect more articles in your website related to Ubuntu and Linux in particular since they are adopted now in large scale both in home and corporate sectors.

  11. JK

    Hello, I have a old P-III dual 1 GHz processor server with 512 MB SDRAM, is it capable to run UBUNTU 12.04. I have not tied yet. but i have also new desktop with i3 2120 4GB RAM and it run ubuntu 12.04 with excelent speed. Thanks

  12. beelymagee

    I think this was mentioned above, but just to clarify, the console command line:

    sudo sed -i ‘s/NoDisplay=true/NoDisplay=false/g’ /etc/xdg/autostart/*.desktop

    Should be entered with an apostrophe at both locations, like this:

    sudo sed -i ‘s/NoDisplay=true/NoDisplay=false/g’ /etc/xdg/autostart/*.desktop

    Worked like a charm after the command was accepted. Great find to turn this on – no idea why Ubuntu would have this off in 12.04 by default. A real inconvenience!

  13. Mike

    I hate to rain on anyone’s parade. However, stripped, lean computers are usually just that and not really useful, friendly or usable. The only way I can make the point is with this analogy. You can take any car and modify, tweak, change or other wise tinker with it to make it the fastest of its kind. However when you get done all you can do with it is go fast. A car needs a passenger seat, not good for speed, it needs a trunk usually, also not good for speed, it needs to have the body work stripped not very pleasing to the eye, etc. etc. etc. By now you get my point.

    Well, most of the changes you propose may make a system marginally faster, but if you are really serious you start with a hand install, tweaking everything from the partitions and so on. Things like dumping the GUI and so on, think UNIX circa 1980. Now for a master geek it may be fast and handy, but for most of us it wouldn’t work. The changes you propose may work, but they are like adding chrome wheels to a car because it makes it LOOK faster. Until you gut the machine it won’t be really faster, but who wants to do that?

  14. lifeluvr

    I can’t thank HTG enough..for the bulk of one hell of a learning adventure!
    P.S.!!! To Dan and a couple other folks…..you must remove the..’..at the beginning and end of the command, directly after -i. Here is a revise??? I don’t know. It worked for me. 12.04

    sudo sed -i s/NoDisplay=true/NoDisplay=false/g /etc/xdg/autostart/*.desktop

  15. crab

    Good tips, however “snappy” and “Ubuntu” aren’t words I ever expected to see in the same sentence. If you want performance on a low spec machine, better to install a less bloated distro from the get go.

  16. Gustavo

    The JFS (journaling filesystem) uses less CPU and memory. Using it instead of EXT4 gave a slower boot time but much faster system to my Ubuntu 12.04 system.

  17. buckaroo

    Is ‘preload’ the same as ‘superfetch’?

  18. Alex Handrill

    When are you people going to realize that preload and superfetch and for that matter ubuntu, are not real words? Because they’re not. These concepts dont mean anything. Like ultrabook. There just marketing buzzwords you can throw around to make people make you money. I use to think the govermint should step up to make some standards but now i think the govermint is using buzzwords like this to obfuscate the trufe: there is NO NEED to SPEND MONEY ever ANYMORE.

  19. M Henri Day

    Thanks for these tips, Chris ! Allow me to comment on two of the six suggestions – firstly Preload. Getting, for example, one’s browser preloaded does, indeed, sound as if it would speed things up, but given that Preload, as you pointed out, «runs in the background without bothering you», it presumeablly has to be launched every time one starts one’s computer, so there would definitely seem to be a certain amount of trade-off involved here. Your views on this matter ?…

    Secondly, with respect to swappiness parametres, my understanding would be that, ceteris paribus, the more RAM installed on a machine, the lower the swappiness quota needs to be. Thus on my main box with 16GB RAM, setting swappines to 10 % shouldn’t engender any problems, but on my ancient computers with 2GB RAM, it strikes me as unadvisable to set it so low. What do you think ?…

    Henri

  20. Chris Hoffman

    Sorry about the formatting, everyone. The blog software messed up the ‘ and – characters.

    @Mike

    Some users will be using an old machine and might want a light system with just a browser or so, so some of these changes will help. They aren’t as necessary if you use a newer system and Ubuntu seems fast enough without it.

    @buckaroo

    It looks similar to Superfetch, from what I can tell!

    @M Henri Day

    I suppose there’s a trade-off with preload, as with everything else.

    I’m no expert on swappiness, really. For most users, the default is probably fine. I thought I’d include it as an interesting option, anyway! It’s easy to tweak it back and forth while your system is running and test it. Your system should continue to work fine no matter how you tweak it, but some settings should be more responsive than others.

  21. Amit Shreyas

    it is useful for older system only. already , ubuntu is fast on my core-i3 system.

  22. kiran

    really helpful for me…I faced this problem until this article.
    -thank you.

Get Free Articles in Your Inbox!

Join 134,000 newsletter readers

Email:

Go check your email!