-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
AK+Everywhere: Recognise that surrogates in utf16 aren't all that common #4196
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
AK+Everywhere: Recognise that surrogates in utf16 aren't all that common #4196
Conversation
7b0af44
to
9e91f87
Compare
Your pull request has conflicts that need to be resolved before it can be reviewed and merged. Make sure to rebase your branch on top of the latest |
9e91f87
to
7974e81
Compare
This looks disastrous (0.63x on JetStream3) but I kinda assume you were running this in your weird multithreading mode? 😅 When pasting JS benchmark results, please include the whole dump so we can see how each subtest was affected. |
🤔 0.6 is good though? 40% faster? |
I read it the other way around. As you can see there it's usually old time and then new time. So to me, the change makes |
Huh. I guess we'll see after the non-weird runs lol |
Here are the results with the master branch of js-benchmarks:
|
That's a juicy 16x speedup right there :) |
Your pull request has conflicts that need to be resolved before it can be reviewed and merged. Make sure to rebase your branch on top of the latest |
7974e81
to
8a2cadb
Compare
cf8cac2
to
5d0003f
Compare
5d0003f
to
a3dbca9
Compare
For the slight cost of counting code points when converting between encodings and a teeny bit of memory, this commit adds a fast path for all-happy utf-16 substrings and code point operations. This seems to be a significant chunk of time spent in many regex benchmarks.
a3dbca9
to
b50a10c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm pending ASAN results. Should wait for GCC asan as well.
Well I say that, but ASAN is unhappy. .. with Alex? Something fishy with destruction of painting render thread in WebContent I guess. |
whatever, I'm merging this. hit a table CSS test flake this time. |
For the slight cost of counting code points when converting between encodings and a teeny bit of memory, this commit adds a fast path for all-happy utf-16 substrings and code point operations.
This seems to be a significant chunk of time spent in many regex benchmarks.
js benchmarks for fun: