LiveCDPerformance

Revision 21 as of 2005-04-27 22:57:49

Clear message

Live CD Performance

Status

Introduction

The boot time for the Ubuntu live CD should be comparable (or superior) to other popular live CDs.

Rationale

The better the load time, the better the live CD experience, the greater chance an end user will want to use it and move on to installing Ubuntu or another distro.

Implementation Plan

  1. Instrumentation is required in order to identify bottlenecks. d-i logs stage 1, we can wrap init scripts to provide timing information on their startup.
  2. Enable DMA on livecd - it may not work on some systems, but it's effectively required
  3. Optimise d-i modules that consume a large amount of time. Locale generation seems excessively slow, and potentially unnecessary for many language setups.
  4. Readahead may be a performance win with 256MB or more, but slower otherwise. Verify with different memory configurations, and ensure that readahead is only enabled when it's a performance benefit. http://unit.aist.go.jp/itri/knoppix/readahead/index-en.html has figures for Knoppix on cloop.

  5. Filesystem comparison - squashfs and unionfs may give a performance benefit. http://listas.hispalinux.es/pipermail/metadistros-dev/2005-April/000580.html suggests a 50 second improvement. Unionfs is currently unavailable on PPC, but can be used for testing on i386.

  6. Background network setup - this can be left for when the user has hit the desktop (NetworkMagic)

Data Preservation and Migration

none.

Packages Affected

For instrumentation, init requires modification. Performance issues in the first stage install will require d-i modifications. Any slow packages in second stage boot will need tweaks to improve performance.

User Interface Requirements

none.

Outstanding Issues

unionfs currently gives internal compiler errors on PPC.

UDU BOF Agenda

  • d-i performance
  • casper performance
  • Ubuntu boot performance (FasterBoot)

UDU Pre-Work

  • Profile the live CD boot sequence to measure the time taken for each step
    • d-i startup (time-to-first-question)
    • Pre-casper d-i activity (measured per menu entry)
    • Casper d-i activity (measured per casper.d script)
    • Standard boot sequence