The XO is a low resource environment. There isn't much room to spare for extra memory or compute cycles. This page will be used to identify applications, services, packaging, and kernel tunables that can be modified to improve XO system performance.
- Identifying/testing various service configuration settings
- Making recommendations for Live CD spin kickstart changes to reflect findings
- Kernel tunables?
- Recommended SD installation options?
- Recommended boot-time options?
- Improved desktop performance?
- Overlay size
- Currently 320 MB
- Swap size
- Currently 256 MB
- Home size
- Currently on NAND
- This takes > 20 seconds to mount
- Currently on NAND
- Should we be resizing the filesystem image with resize2fs to make more space for things like /home?
- This would give us the ability to move /home off NAND, have a bigger overlay, or more swap.
- Patch sent to Jeremy to do this <http://bressers.fedorapeople.org/livecd.patch>
- Potentially add the ability to utilize extra USB keys to extend swap/overlay/home?
- We have 256 megabytes
- What can we turn off to give running applications more memory?
Service Run-level Changes
- What services can we disable
- Which services slow boot time
- Which services use extra resources
Services are disabled in /etc/init.d/livesys. Turning off all the services listed above seems to save about 5 seconds during bootup.
GNOME Desktop Session Changes
- What can we do to GNOME to reduce its footprint
AT SPI Registry Manager -- gnome-at-session.desktop
Bluetooth Manager -- bluetooth-applet.desktop
GNOME Login Sound
GNOME Splash Screen
kerneloops applet -- kerneloops-applet.desktop
Network Authentication -- krb5-auth-dialog.desktop
Print Queue Applet -- redhat-print-applet.desktop
SELinux Troubleshooter -- sealertauto.desktop
User Sharing -- gnome-user-share.desktop
- This can most easily be accomplished by adding the line "Hidden=true" to the end of the .desktop file for each of these services during startup. The desktop files are located in /etc/xdg/autostart and /usr/share/gnome/autostart
- I haven't actually tried this yet, but should look at /proc/sys/vm/swappiness which defaults to 60. Setting to 0 might be best to do as little pre-emptive swapping as possible.
- I/O Scheduler. Is CFQ unnecessary? noop might be best for an SD card.
- What applications do we need to pay particular attention to
- File cache
- Memory footprint