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

ICU-20250 faster to make a property set #278

Merged
merged 1 commit into from
Nov 13, 2018

Conversation

markusicu
Copy link
Member

@markusicu markusicu commented Nov 11, 2018

@sffc
Copy link
Member

sffc commented Nov 12, 2018

Confirmed that the changes make UnicodeSet construction faster for number formatting code.

aheninger
aheninger previously approved these changes Nov 12, 2018
icu4c/source/common/uniset.cpp Show resolved Hide resolved
- fastpath for UnicodeSet.add(new last range)
- fewer UnicodeSet memory allocations:
  initial internal list array, exponential array growth,
  allocate strings list/set only when first one is added
- faster CodePointTrie.getRange(): fewer calls to filter function
- revert UnicodeSet(intprop=value) from trie ranges to range starts + lookup
- cache per-int-prop range starts: fewer lookups
@markusicu markusicu merged commit 98f9170 into unicode-org:master Nov 13, 2018
@markusicu markusicu deleted the fastpropset branch November 13, 2018 00:06
BoredOutOfMyGit pushed a commit to codeaurora-unofficial/platform-external-icu that referenced this pull request Nov 20, 2018
Url: unicode-org/icu@98f9170
github pull request: unicode-org/icu#278

Changes:
- fastpath for UnicodeSet.add(new last range)
- fewer UnicodeSet memory allocations:
  initial internal list array, exponential array growth,
  allocate strings list/set only when first one is added
- faster CodePointTrie.getRange(): fewer calls to filter function
- revert UnicodeSet(intprop=value) from trie ranges to range starts + lookup
- cache per-int-prop range starts: fewer lookups

Bug: 119388329
Test: CtsIcuTestCases
Change-Id: I75b87d4574c183a171b0743a14f156f02cdcc43e
mapx pushed a commit to mapx/icu that referenced this pull request Dec 11, 2018
Cherry-pick another upstream patch to improve the performance
of UnicodeSet.

unicode-org/icu#278

Bug: 899983,901532
Test: Android webview start-up perf and Windows perf graph
Change-Id: I2c2a22a398883178734a2c2a6c5975d9551b039e
TBR=ftang@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/c/1335799
Reviewed-by: Jungshik Shin <jshin@chromium.org>
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.

3 participants