Add Me!Close Menu Navigation

My technical corner about Linux, Perl, programming, computer networks and network security

Add Me!Open Categories Menu

How to improve speed of your Linux desktop

I’m showing only software tricks, disc replacement (from hdd to ssd) and other hardware optimization will be skipped in this article.


1) It may sounds confused but …try to avoid more “automatic” linux distributions as Ubuntu, Mint, etc. These distributions have many automatic programs to improve their abilities for a beginner user, but for an advanced user, these tools sometimes are useless and annoying. Yes, this is true, if you compare many different distributions on your desktop machine you will see huge differences on performance (for example: Fedora vs Ubuntu). Use distribution for experts like Gentoo, Arch. These distributions require a lot of your work during instalation and later, but afterwards, the best performance will be provided by them.


2) Use optimized for performance kernels like -ck patchset (probably your distribution should have this package) with the bfs scheduler. To improve booting speed in your system you may use these kernel parameters (rootfstype=ext4 if you have ext4 filesystem on your root partition): raid=noautodetect libahci.ignore_sss=1 rootfstype=ext4 logo.nologo quiet


3) Mount /tmp and /var/tmp in a ramdisk, because except CPU’s registers, a RAM Memory is the fastest storage in your computer, much faster even than the fastest SSD discs. This requires sometimes a lot of psychical memory but it provides better performance. If you have free psychical memory – use it! To do this, change your /tmp and /var/tmp in /etc/fstab like the below example:

tmpfs                                       /tmp       tmpfs defaults,noatime,size=1000m 0 0
tmpfs                                       /var/tmp   tmpfs defaults,noatime,size=1000m 0 0


4) If we are talking about /etc/fstab – consider the options discard,noatime,nodiratime,data=writeback,defaults if you don’t need advantages like atime, journal, etc.


5) You should prefer to use more of your RAM than a swap partition. Edit your /etc/sysctl.conf and write the following options:

vm.swappiness = 5



6) Replace init to systemd/upstart to get much faster the boot process. Here is an instruction for arch. Init is really archaic today.


7) Disable useless services. Do you use the bluetooth on your PC computer? Or a wireless network? Check you starting services and disable unnessesary.


8) Another obvious advice – use a lighter graphical interface like as XFCE, LXDE, Fluxbox, Openbox, Blackbox, Icewm. In XFCE disable options “Launch KDE/Gnome services on startup”, don’t use any composition effects and big resolution wallpapers. Do you really need desktop effects? You imagine a scenario when you are doing something important (for example: you are writing a very long and complicated report during your job). What thing is more important for you during this scenario: extraordinary effects on the desktop or super fast and responsible machine to your commands? Think practice.



9) Do you know that even a terminal emulator is faster or slower? Compare sakura or roxterm with konsole or gnome-terminal and you have the answer which you should use. To compare a terminal emulator speed you may use Midnight Commander. Pressing Enter when the indicator is placed under a directory and see how fast your terminal reacts. To compare it, go to the raw linux terminal (Ctrl+Alt+F1) and check it again. After it, you will have the answer.


10) Use the preload (gopreload) daemon and prelink to automatic preloading libraries which are used by your system.


11) Use shortcuts in graphical interfaces. If you still don’t use it – learn them. Effects acan be surprising.


12) Cache of your web browsers should be stored in RAM (/tmp in my machine – the ramdisk). Instruction for Chromium, Firefox and Opera.  In ArchLinux you have this package, which can helps you to do this automatically.


This article will be updated if I found other good solutions.

Leave a Reply

You must be logged in to post a comment.