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.
Activities include:
- 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?
Image Creation
- 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?
XO Memory
- We have 256 megabytes
- What can we turn off to give running applications more memory?
Service Run-level Changes
- What services can we disable
avahi-daemon
auditd
bluetooth
cpuspeed
cups
iptables
ip6tables
irqbalance
kerneloops
netfs
nfslock
portreserve
rpcbind
rpcgssd
rpcidmapd
sendmail
microcode_ctl
- 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
Disable:
AT SPI Registry Manager
Bluetooth Manager
GNOME Login Sound
GNOME Splash Screen
kerneloops applet
Network Authentication
Print Queue Applet
SELinux Troubleshooter
User Sharing
Kernel tunables
- 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.
Application tunables
- What applications do we need to pay particular attention to
Firefox
- File cache
- Memory footprint