Well, it might seem sacrilegious to assume Arch is not fast enough by default, but just seeing my newly installed Arch booting in comparison to what I have been used to (SuSE) made me taste how satisfactory it is to squeeze your system into a more streamlined shape, and so I wondered if this could be driven even further.
This page will host descriptions of various techniques of improving Arch's speed on different occasions. In general, risky operations (either in terms of security or stability) should be marked as such and we should have lower-risk methods have priority.
And yes, I know that this is a contentious issue. There's a danger in over-tuning (you have to take into account not only stability issues, but also the effort/profit ratio.) And I hope we're not getting into civil wars over the best compiler options like in ...some other distro... Oh, well, we'll see how it works out...
Unfortunately I haven't yet the time to write much in here very quickly -- hopefully more so in late November --, so for the time being, here's a list of resources and todos to work through:
- latency/bandwidth: responsitivity(desktop?)/overall task completion(server?) boot and launch time? establish metrics?
- is it good to discuss kernel config? scheduler, SLUB/SLAB etc.
- specify modules explicitly in rc.conf or have them autoloaded?
- Sysctl settings like swappiness etc.
- Link to all relevant pages/sections already on the wiki (results for 'speed') (also search for 'speed', 'fast' (lots), 'profil', 'perf').
- search through repositories and AUR (e.g. sysprof, persistent-perl, how about readyexec)
- profiling with bootchart, auditd, filemon (http://bootchart.org/misc/filemon/, http://bootchart.org/misc/filemon-app/), time
- prefetch (https://lists.ubuntu.com/archives/ubuntu-devel-discuss/2007-August/001440.html)
- preload (http://code.google.com/p/prefetch/, http://sourceforge.net/projects/preload)
- Wu Fengguang's adaptive readahead in kernel (http://kerneltrap.org/node/6642, http://lwn.net/Articles/155510/, http://www.linuxinsight.com/adaptive_readahead_benchmark.html)
- ondemand readahead in kernel (http://lwn.net/Articles/235164/)
- Robin Hugh Johnson's readahead-list (http://freshmeat.net/projects/readahead-list/, http://research.iat.sfu.ca/custom-software/readahead-list/)
- Karel Zak's readahead @ fedora (https://hosted.fedoraproject.org/projects/readahead/, https://bugzilla.redhat.com/show_bug.cgi?id=156442)
- other distributions' speedup howtos
- bootchart results (http://bugs.gentoo.org/show_bug.cgi?id=69579, http://www.fooishbar.org/blog//tech/ubuntu/fastBootMiniBoF-2004-12-09-13-45.html, http://www.redhat.com/archives/fedora-devel-list/2004-November/msg01374.html, http://qa.mandriva.com/twiki/bin/view/Main/BootTimeOptimisation, http://www.ibm.com/developerworks/linux/library/l-boot.html?ca=dgr-lnxw82-obg-BootFast, http://www.kernelthread.com/mac/apme/optimizations/, http://wiki.debian.org/?BootProcessSpeedup, https://wiki.ubuntu.com/FasterBootProcess)
- faster alternatives to common apps/tools
- very important: X server startup. Drivers, Settings. Even regardless of DE.