Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limit the number of feature indices processed during feature collection. #2205

Merged
merged 4 commits into from
Feb 29, 2020

Conversation

garretrieger
Copy link
Collaborator

To fix #2191 .

@garretrieger
Copy link
Collaborator Author

I set the limit pretty high, we can tune it down later if needed. Looking at a merged copy of Noto Sans which contains support for everything other than CJK it uses ~500 feature indices.

Copy link
Contributor

@blueshade7 blueshade7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Thanks.
Let's work on lookups later when we see a case timing out with lookups alone.

@ebraminio
Copy link
Collaborator

Please put the font that shows the issue on test/fuzzing/fonts :)

@garretrieger
Copy link
Collaborator Author

Done :)

@garretrieger
Copy link
Collaborator Author

Test case is still timing out, I'll try lowering the limit.

@garretrieger
Copy link
Collaborator Author

Did some profling, now a lot of time is being spent in closure features (as opposed to collect features), probably needs some limiting applied in there as well.

@garretrieger
Copy link
Collaborator Author

Now Script subsetting is the most expensive part, will need to apply feature limiting there too I suspect.

@garretrieger
Copy link
Collaborator Author

So with all the fixes, it goes from taking ~5s to run the fuzzer file to ~0.08s.

@garretrieger garretrieger merged commit 414529e into harfbuzz:master Feb 29, 2020
@garretrieger garretrieger deleted the feature_limit branch March 31, 2020 23:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[subset] feature closure takes long time with a fuzzed font
3 participants