Performance

Authors:
  • Christian Tissmer
  • Felix Schwarz
  • Martin v. Löwis
  • Veit Schiele
Date:

2013-03-01

Um einen ersten Eindruck über die zu erwartende Performance zu erhalten, haben wir einige initiale Performance-Messungen durchgeführt. Dabei wurde die Frage »Welches ist der deutsche Name für GB?« an die folgenden, auf CLDR- basierenden Bibliotheken gestellt:

cldr-Low-Level-API

timing.py:

$ python timing.py
CLDR module
initial lookup:   0.05714988
further lookups:  0.00000073
PyICU

timing-icu.py:

$ python timing-icu.py
PyICU
initial lookup:   0.00950980
further lookups:  0.00000437
Babel

timing-babel.py:

$ python timing-babel.py
Babel
initial lookup:   0.11439490
further lookups:  0.00005031

Resümee

Die cldr-Low-Level-API war selbst beim initialen Lookup, bei dem die ldml-Daten geparst werden, überraschend schnell. Dieser Wert wird sich zwar noch etwas verschlechtern, sobald Inheritance implementiert und dann ggf. drei LDML- Dateien geparst werden müssen, dürfte jedoch weiterhin hinreichend schnell sein.