From Fedora Project Wiki

Revision as of 13:21, 29 December 2008 by Nsoranzo (talk | contribs) (→‎Detailed Description: Fix typos)


20SecondStartup

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).

Owner

Current status

  • Targeted release: Fedora 11
  • Last updated: (Dec 17 2008)
  • Percentage of completion: 0%

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.

Benefit to Fedora

A faster boot makes for happy users.

Scope

Possibly involves all packages that are involved in the boot sequence, udev, module-init-tools, kernel, nash, upstart, readahead, setroubleshoot, gdm.

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

User Experience

Turn on computer, wait 20 seconds, select user on login screen.

Dependencies

  • maybe kernel for sreadahead
  • module-init-tools
  • setroubleshoot-server
  • gdm login infrastrucure
  • rpcbind
  • no regression in other parts of the system

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.

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/

Filed Bugs

Release Notes

Note: all of the following release notes are subject to change.

To reduce boot time, the setroubleshoot and rpcbind daemon were made leaner to not consume too much disk I/O and CPU time. Core services are now started in parallel via upstart. sreadahead is now used to read ahead all disk blocks needed to boot the machine.


Comments and Discussion