This repository has been archived by the owner on Oct 23, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Loading performance pt. 2 #2
Comments
Speedscope profile for bench_eager.py: out.txt
Put differently, of the 4.45s total runtime for loading all layers eagerly in Rust, 1.8s are spent converting norad glyphs to Python dicts and then re-instantiating them on the ufoLib2 side (1.16s on points alone). |
When commenting out file existence checking in Rusty:
Vanilla ufoLib2:
|
Cutting out ufoLib's GlyphSet shaves off a second:
|
Comparing against my WIP iondrive branch:
I assume the lazy approach takes a bit more time because it is iterating through all glyphs. Norad knows no lazy loading. iondrive isn't complete though, e.g. transferring a layer lib is missing. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Using a glyphs2ufo'd Noto Sans from https://github.com/googlefonts/noto-source/tree/d19e3db5ab7f87bfab30b8ecf68601fd81521539.
Lazy loading loads single glyphs on demand, eager loading loads whole layers up front (using parallel glif file loading in norad with rayon).
Rusty:
Vanilla ufoLib2, using fontTools.ufoLib:
The text was updated successfully, but these errors were encountered: