Features/20SecondStartup
From FedoraProject
(→Release Notes) |
|||
| (One intermediate revision by one user not shown) | |||
| Line 90: | Line 90: | ||
== Release Notes == | == Release Notes == | ||
| − | + | To reduce boot time, the setroubleshoot daemon and several small bottlenecks were removed. Regressions in using the readahead service were removed by setting low I/O priorities. Readahead now profiles the system every time the rpm database changes. The behavior of readahead can be tweaked by editing /etc/sysconfig/readahead. | |
| − | + | ||
| − | To reduce boot time, the setroubleshoot daemon and several small bottlenecks were removed. Regressions in using the readahead service were removed by setting low I/O priorities. Readahead now profiles the system every time the rpm database changes. | + | |
<!-- The Fedora Release Notes inform end-users about what is new in the release. Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ --> | <!-- The Fedora Release Notes inform end-users about what is new in the release. Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ --> | ||
Latest revision as of 08:27, 16 April 2009
Contents |
[edit] 20SecondStartup
[edit] Summary
Boot faster than the F10 Features/30SecondStartup. Make Fedora boot and shut down faster. The goal is to be at the login screen in 20 seconds and be as fast as possible after the login (gnome-session).
[edit] Owner
- Name: HaraldHoyer <harald@redhat.com>
[edit] Current status
- Targeted release: Fedora 11
- Last updated: (Apr 14 2009)
- Percentage of completion: 100% ( 10/10 filed bugs resolved, rest moved to F12)
[edit] Detailed Description
Identify bloated tasks in the boot process and make them faster and use less disk I/O.
See: Fedora 10 top 5 disk usage tasks http://www.harald-hoyer.de/personal/blog/fedora-10-disk-io
See, if sreadahead can be used (needs kernel patch), and if Upstart can start core services in parallel.
[edit] Benefit to Fedora
A faster boot makes for happy users.
[edit] Scope
Possibly involves all packages that are involved in the boot sequence, udev, module-init-tools, kernel, nash, upstart, readahead, setroubleshoot, gdm.
[edit] Test Plan
- install bootchart
- modify /sbin/bootchartd to exit on "firefox" not "gdm kdm" etc. and sleep 10-20 seconds after that
- reboot, login, start firefox, close firefox
- measure time until closing of firefox
See detailed instructions and test results at QA/Test Days/2009-02-19.
[edit] User Experience
Turn on computer, wait 20 seconds, select user on login screen.
[edit] Dependencies
- kernel for sreadahead or another mechanism to gather information about what files are used during the boot process
[edit] Blocker Bugs
[edit] Contingency Plan
This is an incremental feature. If we don't quite get down to 20 seconds, too bad, we can just take whatever improvements we have.
[edit] Documentation
- Fedora 10 top 5 disk usage tasks
- http://www.harald-hoyer.de/personal/blog/fedora-10-disk-io
- Fedora 10 - Boot Analysis
- https://www.harald-hoyer.de/personal/blog/fedora-10-boot-analysis
- Upstart
- http://upstart.ubuntu.com/wiki/
- sreadahead
- http://code.google.com/p/sreadahead/
- setroubleshoot
- https://fedorahosted.org/setroubleshoot/
- Summary of the Fedora 11 - 20 Seconds Boot Feature - Test Day
- http://www.harald-hoyer.de/personal/blog/20_Seconds_Boot_Feature_Test_Day
[edit] Resolved Bugs
- sreadahead review (kernel patch missing, though)
- reimplement /usr/bin/fedora-setup-keyboard in C to speed up boot (fixed)
- only call fedora-setup-keyboard for keyboards (fixed)
- setroubleshoot lazy import (fixed)
- setroubleshoot lazy rpm usage (fixed)
- auditd cannot be started via Upstart (fixed)
- fuse has an unnecessary init script (fixed)
- use dbus service-activation to start the kerneloops daemon (fixed)
- var/run/gdm/auth-for* directories not removed.... slows boot (fixed)
[edit] Bugs for F12
- disturbing hacks to start nfs-utils services on demand (not entirely serious)
- (RFC, PATCH) start cups on demand, using xinetd
- start the bluetooth service via udev
- microcode_ctl busy polling microcode_ctl ships a pointless init script
[edit] Release Notes
To reduce boot time, the setroubleshoot daemon and several small bottlenecks were removed. Regressions in using the readahead service were removed by setting low I/O priorities. Readahead now profiles the system every time the rpm database changes. The behavior of readahead can be tweaked by editing /etc/sysconfig/readahead.
[edit] Comments and Discussion