ext2 vs ext3
- Use xset to speed up the keyboard. This can make the system feel more responsive even if it isn't really. The default always seemed sluggish to me.
- renice X to give it a higher priority. Other platforms give the GUI high scheduling priority to achieve better responsiveness. But this is at a cost to other processes. Linux is a blank slate. You might include the font server (if being used), and key KDE and GNOME processes as well.
nice -n -10 X :0
7.3.3 Sluggish old low memory machines For some old low memory systems, it may still be useful to enable over-commit of memory through the proc filesystem:
# echo 1 > /proc/sys/vm/overcommit_memory
9.2. Memory The more memory, the better. X will do a lot caching to help performance. But caching requires memory, and if there isn't much to start with, then we would need to reduce memory requirements. Some tips for those with low memory or performance problems:
- Use the free command to make sure all memory and swap is recognized.
- Make sure you don't have other system services that are hogging memory or CPU. Use top or ps to see what is running, and disable anything you can to free up memory and CPU. Again, a default installation may have many things running that you don't really need.
- Make sure you have plenty of swap space. With low, or even modest, memory, swap is all the more important. A general rule of thumb is twice as much swap as physical memory. With low memory, this is not enough. Try four times real memory. Or more. If you can't create more swap partitions, see the mkswap man page about creating swap files instead. Constant disk churning is a symptom of insufficient swap space, and the system will be slowed as a result, sometimes drastically. Or, possibly this may be the symptom of a poorly behaved kernel VM system (try another kernel in this case).
- Drive performance is important for swap performance. Make sure your drive has DMA enabled if the drive supports it, and is otherwise tuned and performing up to snuff. See the hdparm man page. Slow drive + slow card + low memory = slow system.
- Don't use KDE or GNOME if memory is tight. These both require substantial memory, and are not required to just run X. Think of these as usability enhancements. 32M probably may not be enough. 64M may be decent, depending on what other applications are being used, and other variables. 128M should be adequate in most situations. 256M or more to be comfortable. File Managers like Nautilus and gmc can also be memory hungry.
- Use a lightweight window manger. WindowMaker, BlackBox, IceWM, fvwm (and variants), XFce, all have reputations of performing well with low memory. There are surely others as well. Experiment. fvwm is generally considered the lightest of the light.
A very nice desktop is still very possible even without KDE or GNOME. In fact, most KDE and GNOME applications can still be used even if KDE and GNOME are not running themselves (assuming the right libs are installed).
- Don't use fancy themes or backgrounds. Plain and simple is easier on resources. Use a solid color background. Avoid pixmaps or gradients for any kind of background, including menus, title bars, etc.
- Use a lesser screen size and color depth. 800x600x16 will not push X as hard and be easier on system resources than higher values. While a ColorDepth of 24 is preferred, you probably will not notice the difference of 16 with the majority of applications.
- Some applications require much more memory than others. Some notable hogs are Netscape, Mozilla, office suites, and the Gimp. Netscape is faster than Mozilla (but not as nice). Netscape-Navigator uses less memory than Netscape-Communicator. Close any of these apps when not in use. Use text browsers like lynx or w3m wherever you can, like reading locally installed HTML documentation. Much faster, and much less memory is required.
- Also, use text based clients for mail (mutt or pine) and news (slrn or trn). Again, faster and much less memory is used, and these are after all text based protocols at heart anyway.
- rxvt uses less memory than xterm, konsole or gnome-terminal.
- If you run an X session for long periods of time (like days or weeks), restart X occasionally to free memory tied up as cache.
- Disable "backing store" and "save-unders" to reduce memory usage (performance penalty though). Check your Window Manager's settings too. See what modules are being loaded in the "Modules" section of XF86Config as well. Your installation may have many unnecessary ones enabled, or ones you can't take advantage of (e.g. "v4l", aka "Video4Linux").
- Font servers may provide a slight performance boost by off-loading font rendering to the font server, while freeing the X server to do other things. But, the font server will use a small additional amount of memory as well. So, you can try it either way to see if it makes a difference.
- Lastly, RAM is cheap now. Buy some ;-) A new drive too.
- RAM is still just too low for X? Check out tinyX: http://www.superant.com/smalllinux/tinyX01.html. Reportedly runs in as little as 4 Meg of RAM.
apt-get install xfce, and startxfce
apt-get install -t testing xfld-desktop
Once that was complete, I needed to install X-windows:
apt-get install x-windows-system
# apt-get install icewm # apt-get install xserver-xfree86 # apt-get install x-window-system-core # apt-get install xdm # apt-get install numlockx # apt-get install xterm