Tuning Startup Performance For International Library

Author: Frank Yung-Fong Tang <ftang@netscape.com> AIM:yungfongta x2913

Goal:

Improve Gecko / Netscape6 startup performance.

High Level Strategy:

  • Reduce the need to call international library at startup time.
  • Reduce the time spend at international library at startup time.

Responsibility Area:

The code which implement or call (use) the implementation in the following directories:
  • mozilla/intl/*
  • text measuring, text drawing, font handling code under mozilla/gfx/src/{windows,mac,gtk}
  • input method code under mozilla/widget/src/{windows,mac,gtk}
  • mozilla/extensions/universalchardet/*

High Level Requirements:

The new code
  1. SHOULD NOT cause functionality regression,
  2. SHOULD NOT trade off the current extensibility model which allow users reconfigure external property files to tune code behavior,
  3. SHOULD be faster then the old code at least XX% at startup time, (XX% is TBD now)
  4. SHOULD NOT cause any obvious slow down of run-time (after startup) performance.

Categories of Problem:

  1. Unnecessary Loading of International Library at startup time - DLLLOAD (example: bug )
  2. Unnecessary Loading of external files at startup time - FILELOAD (example: bug )
  3. Unnecessary Construction of data structure at startup time- INITDATA (example: bug )
  4. Redudent excutions of code which always return the same result at startup time- LOOP (example: bug )

Staff:

Contact XP Tuning Windows Tuning Macintosh Tuning UNIX Tuning
Juraj Betak <jbetak@netscape.com> Primary Primary Primary Secondary
Naoki Hotta <nhotta@netscape.com> Primary
Brian Stell <bstell@netscape.com> Primary
Frank Yung-Fong Tang <ftang@netscape.com> Secondary Secondary
Reviewer
Secondary
Reviewer
Roy Yokoyama <yokoyama@netscape.com> Reviewer
Shanjian Li <shanjian@netscape.com> Secondary Reviewer

List of issues:

Schedule:

Meta Bug Tracking: