Closed Bug 1567437 Opened 6 months ago Closed 6 months ago

Add memory reporting for hyphenation resources

Categories

(Core :: Layout: Text and Fonts, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: jfkthame, Assigned: jfkthame)

References

Details

Attachments

(1 file)

Some of the hyphenation resources that we may load (depending on languages for which hyphenation is used) are quite big.

Currently-installed resources with their on-disk sizes:

  143200  intl/locales/af/hyphenation/hyph_af.dic
   15408  intl/locales/bg/hyphenation/hyph_bg.dic
    6106  intl/locales/ca/hyphenation/hyph_ca.dic
   60986  intl/locales/cy/hyphenation/hyph_cy.dic
    6779  intl/locales/da/hyphenation/hyph_da.dic
  138675  intl/locales/de-1901/hyphenation/hyph_de-1901.dic
  136060  intl/locales/de-1996/hyphenation/hyph_de-1996.dic
  133553  intl/locales/de-CH/hyphenation/hyph_de-CH.dic
  106063  intl/locales/en-US/hyphenation/hyph_en_US.dic
   32206  intl/locales/eo/hyphenation/hyph_eo.dic
   39158  intl/locales/es/hyphenation/hyph_es.dic
   35105  intl/locales/et/hyphenation/hyph_et.dic
    1704  intl/locales/fi/hyphenation/hyph_fi.dic
   14390  intl/locales/fr/hyphenation/hyph_fr.dic
   27370  intl/locales/gl/hyphenation/hyph_gl.dic
    7755  intl/locales/hr/hyphenation/hyph_hr.dic
   11711  intl/locales/hsb/hyphenation/hyph_hsb.dic
  680107  intl/locales/hu/hyphenation/hyph_hu.dic
    4248  intl/locales/ia/hyphenation/hyph_ia.dic
   34744  intl/locales/is/hyphenation/hyph_is.dic
    2556  intl/locales/it/hyphenation/hyph_it.dic
    1969  intl/locales/kmr/hyphenation/hyph_kmr.dic
    2130  intl/locales/la/hyphenation/hyph_la.dic
   10063  intl/locales/lt/hyphenation/hyph_lt.dic
   13894  intl/locales/mn/hyphenation/hyph_mn.dic
  273418  intl/locales/nb/hyphenation/hyph_nb.dic
  120460  intl/locales/nl/hyphenation/hyph_nl.dic
  273418  intl/locales/nn/hyphenation/hyph_nn.dic
   39089  intl/locales/pl/hyphenation/hyph_pl.dic
    1542  intl/locales/pt/hyphenation/hyph_pt.dic
   90755  intl/locales/ru/hyphenation/hyph_ru.dic
   76038  intl/locales/sh/hyphenation/hyph_sh.dic
    7917  intl/locales/sl/hyphenation/hyph_sl.dic
   42921  intl/locales/sv/hyphenation/hyph_sv.dic
    3765  intl/locales/tr/hyphenation/hyph_tr.dic
   65610  intl/locales/uk/hyphenation/hyph_uk.dic

However, it's unclear what the corresponding memory footprint is when they're loaded, as we don't appear to have any memory reporting connected to hyphenation. We should implement some kind of reporting so that we can assess the impact, and whether it is worth attempting to reduce it.

(See also bug 1487212; having actual memory reporting would help us better understand the potential benefit there.)

According to this reporter, loading the en-US hyphenation patterns (e.g. visiting https://developer.mozilla.org/en-US/docs/Web/CSS/hyphens, which has an example of auto-hyphenation) has a memory footprint of around 900K.

Loading the Hungarian hyphenation patterns costs around 7MB (ouch!).

Even a small resource like Portuguese or Finnish costs 32K at runtime.

Pushed by jkew@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f07e8b6fb8a0
Add memory reporter for hyphenation data. r=njn
Status: NEW → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
Assignee: nobody → jfkthame
Regressions: 1573229
You need to log in before you can comment on or make changes to this bug.