You are currently viewing a snapshot of taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to, please file a bug.

Tuning Startup Performance For International Library

Author: Frank Yung-Fong Tang <> AIM:yungfongta x2913


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 )


Contact XP Tuning Windows Tuning Macintosh Tuning UNIX Tuning
Juraj Betak <> Primary Primary Primary Secondary
Naoki Hotta <> Primary
Brian Stell <> Primary
Frank Yung-Fong Tang <> Secondary Secondary
Roy Yokoyama <> Reviewer
Shanjian Li <> Secondary Reviewer

List of issues:


Meta Bug Tracking: